如何从python中的特定字符串中切片字符串

好的,所以可以说我有

s = 'ABC Here DEF GHI toHere JKL'

我希望得到一个新的字符串之间只有字符串HeretoHere

new_str = 'DEF GHI'

(我不知道我之前Here或其他任何地方有多少或哪些字符)我只知道我有HeretoHere在字符串中。我怎样才能得到new_str


杨__羊羊
浏览 278回答 4
4回答

隔江千里

最简单的方法是使用切片:s[s.find('Here') + len('Here') : s.find('toHere')] #' DEF GHI '如果需要.strip(),您可以从结果中去除空白。

ABOUTYOU

使用索引这可能很有用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()获取新切片的正确索引,然后' '.join()是新切片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 = iprint(' '.join(s[start:end]))# DEF GHI

繁花不似锦

最简单的方法是使用拆分(恕我直言)print(s.split("Here",1)[-1].split("toHere",1)[0])如果Here不存在或toHere不存在粗略,它将无法按您的预期工作(它将遭受与其他解决方案相同的后果)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python