Split by a word (case insensitive)
如果我想
1 | "hi, my name is foo bar" |
在
如果我有:
1 2 3 4 5 | test ="hi, my name is foo bar" print test.split('foo') print test.upper().split("FOO") |
我会得到
1 2 | ['hi, my name is ', ' bar'] ['HI, MY NAME IS ', ' BAR'] |
分别。
但我想要的是:
1 | ['hi, my name is ', ' bar'] |
每一次。目标是保持原始字符串的区分大小写,除了我要拆分的内容。
所以如果我的测试字符串是:
4我期望的结果是:
1 | ['hI MY NAME iS ', ' bar'] |
您可以将
1 2 3 4 5 | >>> import re >>> test ="hI MY NAME iS FoO bar" >>> re.split("foo", test, flags=re.IGNORECASE) ['hI MY NAME iS ', ' bar'] >>> |
您还可以搜索一些内容并获取关键字的起始位置。我建议您这样做,然后去掉"substring"方法。(我来自C,所以我不知道这种语言的方法是什么)