gpt4 book ai didi

python - (?ui) 在 Python 正则表达式中意味着什么?

转载 作者:太空宇宙 更新时间:2023-11-03 12:40:40 25 4
gpt4 key购买 nike

Python Fuzzy Wuzzy 库包含以下正则表达式:

regex = re.compile(r"(?ui)\W")
return regex.sub(u" ", a_string)

( https://github.com/seatgeek/fuzzywuzzy/blob/master/fuzzywuzzy/string_processing.py#L17 )

这会将 a_string 中的任何非字母数字替换为空格。

(?ui) 位有什么作用?没有它似乎也能正常工作。

谢谢

最佳答案

uunicode flag iignore case flag .

unicode 标志使\w、\W、\b、\B、\d、\D、\s 和\S 依赖于 Unicode 字符属性数据库。例如:

>>> re.findall(r'\d+', u'The answer is \u0664\u0662')         # No flag
[]

>>> re.findall(r'(?u)\d+', u'The answer is \u0664\u0662') # With unicode flag
[u'\u0664\u0662']

忽略大小写标志执行不区分大小写的匹配。 [A-Z] 等表达式也将匹配小写字母。这不受当前语言环境的影响。例如:

>>> re.findall(r'[a-z]+', 'HELLO world')         # No flag
['world']

>>> re.findall(r'(?i)[a-z]+', 'HELLO world') # With ignore case flag
['HELLO', 'world']

关于python - (?ui) 在 Python 正则表达式中意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16706803/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com