如何在Python中从指定单词/短语的右侧返回子字符串?

2024-05-16 10:37:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一组包含单词的字符串,例如,“delicious”。你知道吗

什么样的方法能让文章正确地表达“美味”的意思

发件人:"This is a delicious apple pie."

返回" apple pie."

或者从"thisisadeliciousapplepie."

返回"applepie."?你知道吗


Tags: 方法字符串appleis文章this单词pie
3条回答

如果您确定该变量包含“delicious”的一次出现,您可以使用split

>>> s = "This is a delicious apple pie."
>>> s.split("delicious")[1]
' apple pie.'

但如果变量不包含单词,则必须防止可能的IndexError!你知道吗

>>> s = "This is an apple pie."
>>> s.split("delicious")[1]
IndexError: list index out of range

字符串对象包含一个方法^{},它正是为这种用途而设计的。你知道吗

>>> s = 'this is a delicious apple pie'
>>> pre, target, post = s.partition('delicious')
>>> pre
'this is a '
>>> target
'delicious'
>>> post
' apple pie'

如果目标子字符串未包含在完整字符串中,则返回的元组在第2和第3个位置将有空字符串:

>>> s2 = 'this is an apple pie'
>>> s2.partition('delicious')
('this is an apple pie', '', '')

在正则表达式中使用正向查找:

(?<=delicious)(.*)

Demo on Regex101。你知道吗

相关问题 更多 >