如何使用 RegEx 提取单词之间的文本?
Posted
技术标签:
【中文标题】如何使用 RegEx 提取单词之间的文本?【英文标题】:How to extract the text between the word using RegEx? 【发布时间】:2022-01-12 18:12:14 【问题描述】:我有这样的文字:
"ababbabbba"
我想将字符提取为 a 之间的列表。对于上面的文本,我期望输出如下:
['aba', 'abba', 'abbba']
我用过:
re.split(r'a(.*?)a', data)[1:-1]
但它不起作用。
【问题讨论】:
this 能回答你的问题吗? 这能回答你的问题吗? Python regex find all overlapping matches? 为什么不像:['a' + t + 'a' for t in data.split('a')][1:-1] 【参考方案1】:如果您愿意使用 findall 而不是 split,则此方法可行。
import re
s = "ababbabbba"
print(re.findall(r'(?=(a[^a]+a))',s))
打印:
['aba', 'abba', 'abbba']
【讨论】:
以上是关于如何使用 RegEx 提取单词之间的文本?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 .NET C# regex 或其他任何方法提取 *>...* 之间的文本字符串?