gpt4 book ai didi

python - 使用正则表达式 python 在模式后获取句子

转载 作者:太空宇宙 更新时间:2023-11-03 13:14:15 26 4
gpt4 key购买 nike

在我的字符串中(示例取自 this turorial )我想获取所有内容,直到第一个 . 之后的通用 (year). 模式:

str = 'purple alice@google.com, (2002).blah monkey. (1991).@abc.com blah dishwasher'

我想我的代码已经差不多完成了,但还没有完成:

test = re.findall(r'[\(\d\d\d\d\).-]+([^.]*)', str)

... 返回:['com, (2002)', 'blah monkey', '(1991)', '@abc', 'com blah dishwasher']

期望的输出是:

['blah monkey', '@abc']

换句话说,我想找到年份模式和下一个点之间的所有内容。

最佳答案

如果你想得到 (year). 和第一个 . 之间的所有东西,你可以使用这个:

\(\d{4}\)\.([^.]*)

参见 Live Demo .

这里解释一下:

"\(\d{4}\)\.([^.]*)"g

\( matches the character ( literally
\d{4} match a digit [0-9]
Quantifier: {4} Exactly 4 times
\) matches the character ) literally
\. matches the character . literally
1st Capturing group ([^.]*)
[^.]* match a single character not present in the list below
Quantifier: * Between zero and unlimited times, as many times as possible, giving back as needed [greedy]
. the literal character .
g modifier: global. All matches (don't return on first match)

关于python - 使用正则表达式 python 在模式后获取句子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35038201/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com