Python提供了一个标志(^{
a = re.compile(r"""\d + # the integral part
\. # the decimal point
\d * # some fractional digits""", re.X)
但是,使用自动字符串连接,您可以实现基本相同的功能:
^{pr2}$我不认为我真的见过后一种形式的使用,但是(IMHO)它使正则表达式更易于阅读(我不需要试图弄清楚哪些空白被转义,哪些空白被忽略了。。。我的评论被我的文本编辑器格式化为评论。有没有理由更喜欢前者而不是后者或visa诗句?或者这真的是番茄番茄的问题?在
前者可以放在自己的文本文件中,然后在不借助
literal_eval
的情况下加载。对于复杂的REs(或选择多个不同的REs),这可能是一个好处。在我觉得是西红柿番茄汤。“x”正则表达式标志并不是python所独有的,它在串联操作更为冗长的语言中可能更有意义(想象一下
+
到处都在增加噪音)。在我还考虑到这样一个事实,即它强制您正确地指出表达式中的哪个空格是一个积极的东西,因为它消除了任何歧义,并使您很难忽略regexen中依赖于空白的异常。在
最后一个论点是,您可以将完全相同的模式复制到另一种具有相同标志的语言上,这样就可以轻松地工作了。在后一种情况下,我必须删除很多
r
和撇号。在顺便说一句,您可以始终将与连接
re.X
选项。在相关问题 更多 >
编程相关推荐