This answer关于正则表达式的可维护性的问题提到了.NET用户在正则表达式中实现注释的能力(我对第二个例子特别感兴趣)
有没有一种简单的原生方式在python中重现这一点,最好不需要安装第三方库或编写我自己的注释条算法?
我目前所做的与该答案中的第一个示例类似,我将多个行中的正则表达式连接起来并对每一行进行注释,如下例所示:
regexString = '(?:' # Non-capturing group matching the beginning of a comment
regexString += '/\*\*'
regexString += ')'
答案 0 :(得分:7)
您正在寻找re
模块中的VERBOSE标志。其文档中的示例:
a = re.compile(r"""\d + # the integral part
\. # the decimal point
\d * # some fractional digits""", re.X)
答案 1 :(得分:2)
r"""
(?: # Match the regular expression below
/ # Match the character “/” literally
\* # Match the character “*” literally
\* # Match the character “*” literally
)
"""
你也可以像这样在正则表达式中添加注释:
(?#The following regex matches /** in a non-capture group :D)(?:/\*\*)