为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

PIPIONE 2021-07-29 14:32:02
我试图在特定字符串后仅捕获 1 个单词。例如,import remy_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,它有效,但不是最有效的方法。谢谢。
查看完整描述

3 回答

?
白猪掌柜的

TA贡献1893条经验 获得超10个赞

只需使用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'


查看完整回答
反对 回复 2021-08-03
?
慕容708150

TA贡献1831条经验 获得超4个赞

我会在你的正则表达式中尝试一个积极的回顾:


>>> import re

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

>>> re.search('(?<=I love )(\w+)', my_string).group(1)

'Apple'


查看完整回答
反对 回复 2021-08-03
?
Cats萌萌

TA贡献1805条经验 获得超9个赞

有很多方法可以做到。以最简单的形式,您可以执行以下操作:


>>> s = 'Apple juice, it is delicious.'

>>> s.split()[0]

'Apple'

或者使用功能齐全的正则表达式 ( import re)


>>> re.search(r'^[\S]*(?!\S\s)', s)

'Apple'


查看完整回答
反对 回复 2021-08-03
  • 3 回答
  • 0 关注
  • 250 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信