Python正则表达式:单词集的替代

Python正则表达式:单词集的替代,第1张

Python正则表达式:单词集的替代

正则表达式模块的一个有趣功能是命名列表。有了它,您就不必

|
在非捕获组中包括多个由分隔的选项。您只需要在列表之前定义列表,并通过名称在模式中引用它即可。例:

import regexwords = [ ['a', 'the', 'one'], ['reason', 'reasons'], ['for', 'of'] ]pattern = r'm L<word1> s+ L<word2> s+ L<word3> M'p = regex.compile(pattern, regex.X, word1=words[0], word2=words[1], word3=words[2])s = 'the reasons for'print(p.search(s))

即使此功能不是必需的,它也可以提高可读性。

如果您

|
在之前加入项目,则可以通过re模块实现类似的功能:

import rewords = [ ['a', 'the', 'one'], ['reason', 'reasons'], ['for', 'of'] ]words = ['|'.join(x) for x in words]pattern = r'b ({}) s+ ({}) s+ ({}) b'.format(*words)p = re.compile(pattern, re.X)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4935143.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-13
下一篇 2022-11-13

发表评论

登录后才能评论

评论列表(0条)

保存