Python - 在文本中的特定字符串之后捕获下一个单词

我试图在特定字符串后仅捕获 1 个单词。例如,


import re

my_string="I love Apple juice, it is delicious."

print(my_string.split("I love",1)[-1])

我得到结果:


Apple juice, it is delicious.

但我只需要 1 个字,之后就什么都没有了。


Apple 

如何在 Apple 之后删除所有东西?我试过了rstrip,它有效,但不是最有效的方法。谢谢。


PIPIONE
浏览 251回答 3
3回答

白猪掌柜的

只需使用str.split两次并确保使用maxsplit以避免不必要的拆分:my_string = 'I love Apple juice, it is delicious.'res = my_string.split('I love', maxsplit=1)[-1]\               .split(maxsplit=1)[0]'Apple'

慕容708150

我会在你的正则表达式中尝试一个积极的回顾:>>> import re>>> my_string="I love Apple juice, it is delicious.">>> re.search('(?<=I love )(\w+)', my_string).group(1)'Apple'

Cats萌萌

有很多方法可以做到。以最简单的形式,您可以执行以下操作:>>> s = 'Apple juice, it is delicious.'>>> s.split()[0]'Apple'或者使用功能齐全的正则表达式 ( import re)>>> re.search(r'^[\S]*(?!\S\s)', s)'Apple'
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python