gpt4 book ai didi

regex - Python 3如何使用正则表达式在两点之间获取字符串?

转载 作者:行者123 更新时间:2023-12-04 14:14:22 25 4
gpt4 key购买 nike

如何使用regex或Python 3中的任何其他库在两点之间获取字符串?

例如:
Blah blah ABC要检索的字符串XYZ Blah Blah

ABC和XYZ是变量,表示我必须检索的字符串的开头和结尾。

最佳答案

ABCXYZ用作具有后向和前向断言的 anchor :

(?<=ABC).*?(?=XYZ)
(?<=...)后向断言仅与 ABC之前的文本位置匹配。同样, (?=XYZ)XYZ后跟的位置匹配。它们一起形成两个 anchor ,这些 anchor 限制了与任何内容匹配的 .*表达式。

您可以使用 re.findall()找到所有这样的 anchor 定文本:
for matchedtext in re.findall(r'(?<=ABC).*?(?=XYZ)', inputtext):

如果 ABCXYZ是变量,则要对它们使用 re.escape()(以防止将其任何内容解释为正则表达式语法)并进行插值:
re.match(r'(?<={}).*?(?={})'.format(abc, xyz), inputtext)

关于regex - Python 3如何使用正则表达式在两点之间获取字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17151405/

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