Что делает " (?u) " делать в регулярном выражении?
Я посмотрел, как токенизация реализуется в scikit-learn и нашел это регулярное выражение (источник):
token_pattern = r"(?u)bww+b"
регулярное выражение довольно простое, но я никогда не видел (?u) часть перед. Может кто-нибудь объяснить мне, что делает эта часть?
1 ответов
он включает re.U (re.UNICODE) флаг для этого выражения.
С документацию:
(?iLmsux)(одну или несколько букв из набора
'i','L','m','s','u','x'.) Группа соответствует пустой строке; буквы устанавливают соответствующие флаги:re.I(игнорировать регистр),re.L(зависит от локали),re.M(многоканальный),re.S(точка играм все),re.U(зависит от Unicode) иre.X(verbose), для всего регулярного выражения. (Флаги описаны в содержимом модуля.) Это полезно, если вы хотите включить флаги как часть регулярного выражения, вместо передачи аргументов флаг