我有2根弦
a = "abc feat. def"
b = "abc Feat. def"
我想检索单词之前的字符串feat.
or Feat.
这就是我正在做的事情
a.split("feat.", 1)[0].rstrip()
这返回abc
。但是如何使用分割分隔符执行不区分大小写的搜索?
这是我到目前为止所尝试过的
b.split("feat." or "Feat.", 1)[0].rstrip()
输出 -abc Feat. def
b.split("feat." and "Feat.", 1)[0].rstrip()
输出 -abc
a.split("feat." and "Feat.", 1)[0].rstrip()
输出 -abc feat. def
.
a.split("feat." or "Feat.", 1)[0].rstrip()
输出 -abc
为什么会出现这种差异and
and or
在这两种情况下?
使用正则表达式代替:
>>> import re
>>> regex = re.compile(r"\s*feat\.\s*", flags=re.I)
>>> regex.split("abc feat. def")
['abc', 'def']
>>> regex.split("abc Feat. def")
['abc', 'def']
或者,如果您不想允许FEAT.
or fEAT.
(这个正则表达式会):
>>> regex = re.compile(r"\s*[Ff]eat\.\s*")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)