如何在python中从特定字符串中分割字符串

如何在python中从特定字符串中分割字符串,python,Python,好吧,假设我有 s = 'ABC Here DEF GHI toHere JKL' 我想得到一个新的字符串,只在这里和toHere之间 我不知道在这里或其他任何地方之前我有多少或哪些角色 我只知道我在这里和这里的字符串。 如何获取新的\u str?最简单的方法是使用切片: s[s.find('Here') + len('Here') : s.find('toHere')] #' DEF GHI ' 如果需要,可以从结果中去掉空白。使用索引可能会很有用 str1 = 'ABC Here DEF

好吧,假设我有

s = 'ABC Here DEF GHI toHere JKL'
我想得到一个新的字符串,只在这里和toHere之间

我不知道在这里或其他任何地方之前我有多少或哪些角色 我只知道我在这里和这里的字符串。
如何获取新的\u str?

最简单的方法是使用切片:

s[s.find('Here') + len('Here') : s.find('toHere')]
#' DEF GHI '

如果需要,可以从结果中去掉空白。

使用索引可能会很有用

str1 = 'ABC Here DEF GHI toHere JKL' 
try:
    start=str1.index('Here')+len('Here')
    end=str1.index('toHere')

    print(str1[start:end].strip())
except ValueError:
    print('Either of the substring not found')
可以使用enumerate和.split为新切片获取适当的索引,然后使用“”。加入该新切片

s = 'ABC Here DEF GHI toHere JKL'
s = s.split()
for i, v in enumerate(s):
    if v == 'Here':
        start = i + 1
    if v == 'toHere':
        end = i
print(' '.join(s[start:end]))
# DEF GHI

最简单的方法是使用拆分imho

print(s.split("Here",1)[-1].split("toHere",1)[0])

如果Here不存在或toHere不存在,它将无法正常工作,它将承受与其他解决方案相同的后果

import re;printre.findallHere.*到此,目标字符串。。。我想非常感谢!这就是我一直在寻找的
print(s.split("Here",1)[-1].split("toHere",1)[0])