【发布时间】:2015-08-30 07:10:19
【问题描述】:
如果我想服用
"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']
【问题讨论】:
-
我不明白这种拆分的应用。 FOO 在实际情况下会是什么?您是在提取人名还是其他内容?
-
一个可能的例子:SQL 脚本可以使用分隔符来分隔批次(例如 SQL 管理器中默认的“go”)。 SQL 引擎本身不理解这个分隔符,只有 shell 才能理解。因此,当您从 python 模块运行这样的脚本时,您需要在“开始”时拆分文件以连续运行单独的批次(不区分大小写 ofc)。