Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
不区分大小写的Python字符串split()方法_Python_String - Fatal编程技术网

不区分大小写的Python字符串split()方法

不区分大小写的Python字符串split()方法,python,string,Python,String,我有两条线 a = "abc feat. def" b = "abc Feat. def" 我想检索单词feat.或feat. 这就是我在做的 a.split("feat.", 1)[0].rstrip() 这将返回abc。但如何使用拆分分隔符执行不区分大小写的搜索 这就是我到目前为止所尝试的 b.split("feat." or "Feat.", 1)[0].rstrip() 输出-abc专长。def b.split(“feat.”和“feat.”,1)[0].rstrip() 输出-a

我有两条线

a = "abc feat. def"
b = "abc Feat. def"
我想检索单词
feat.
feat.

这就是我在做的

a.split("feat.", 1)[0].rstrip()
这将返回
abc
。但如何使用拆分分隔符执行不区分大小写的搜索

这就是我到目前为止所尝试的

b.split("feat." or "Feat.", 1)[0].rstrip()
输出-
abc专长。def

b.split(“feat.”和“feat.”,1)[0].rstrip()

输出-
abc

a.split(“feat.”和“feat.”,1)[0].rstrip()

输出-
abc专长。def

a.split(“feat.”或“feat.”,1)[0].rstrip()

输出-
abc

在这两种情况下,为什么与
存在这种差异?

a[0:a.lower().find(“feat”)].rstrip()就可以了

ing

“string1”和“string2”以及。。。和“stringN”

返回最后一个字符串的值

ing

“string1”或“string2”或。。。或“stringN”

将返回第一个字符串

.

改用正则表达式:

>>> 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.
FEAT.
(此正则表达式将允许):

您应该使用正则表达式:

re.split('\s*[Ff]eat\.', a)
做一些布尔判断

"feat." or "Feat." -> "feat." if "feat." else "Feat." -> "feat."

"feat." and "Feat." -> "Feat." if "feat." else "feat." -> "Feat."
"feat." or "Feat." -> "feat." if "feat." else "Feat." -> "feat."

"feat." and "Feat." -> "Feat." if "feat." else "feat." -> "Feat."