python - 按单词拆分(不区分大小写)

标签 python regex string split

如果我想带走

"hi, my name is foo bar"

并在 "foo" 上拆分它,并让该拆分不区分大小写(在任何 "foO""FOO" 上拆分>、"Foo" 等),我该怎么办?请记住,虽然我希望拆分不区分大小写,但我也确实希望保持字符串其余部分的大小写敏感。

如果我有:

test = "hi, my name is foo bar"

print test.split('foo')

print test.upper().split("FOO")

我会得到

['hi, my name is ', ' bar']
['HI, MY NAME IS ', ' BAR']

分别。

但我想要的是:

['hi, my name is ', ' bar']

每一次。目标是保持原始字符串的大小写敏感性,除了我要拆分的内容。

所以如果我的测试字符串是:

"hI MY NAME iS FoO bar"

我想要的结果是:

['hI MY NAME iS ', ' bar']

最佳答案

您可以使用 re.split functionre.IGNORECASE flag (或简称为 re.I):

>>> import re
>>> test = "hI MY NAME iS FoO bar"
>>> re.split("foo", test, flags=re.IGNORECASE)
['hI MY NAME iS ', ' bar']
>>>

关于python - 按单词拆分(不区分大小写),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30834159/

相关文章:

java - 当我将文本从 java servlet 加载到 JTextPane 时,为什么会丢失换行符?

python-ldap 创建一个组

python - 使用json,python保存其键为元组的字典

python - 当涉及 if 语句以及将其他函数导入 if 语句时,我遇到了麻烦

javascript - Angular 2响应式(Reactive)表单控件验证模式

python - 使用 Python 将 JSON 字符串转换为 dict

python - 如何从有条件的 pandas 系列中删除字符?

python - 正则表达式 - `^`、 `$` 和 `\A`、 `\Z` 之间的差异

regex - 正则表达式(RegEx)和dplyr::filter()

c - 如何检查来自标准输入的输入是否为空或换行符