繁体   English   中英

Python正则表达式在2.6中不区分大小写

[英]Python regex split case insensitive in 2.6

我有以下代码在Python 2.7中工作:

entry_regex = '(' + search_string + ')'
entry_split = re.split(entry_regex, row, 1, re.IGNORECASE)

我需要在Python 2.6以及Python 2.7和2.6中使用它.re.split不接受标志(re.IGNORECASE)作为第四个参数。 有帮助吗? 谢谢

您只需将(?i)添加到正则表达式即可使其不区分大小写:

>>> import re
>>> reg = "(foo)(?i)"
>>> re.split(reg, "fOO1foo2FOO3")
['', 'fOO', '1', 'foo', '2', 'FOO', '3']

使用re.compile()创建re.RegexObject ,然后调用它的split()方法。

例:

>>> re.compile('XYZ', re.IGNORECASE).split('fooxyzbar')
['foo', 'bar']

哦,我自己找到了,我可以把它编译成Regex对象:

entry_regex = re.compile('(' + search_string + ')', re.IGNORECASE)
entry_split = entry_regex.split(row, 1)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM