以下正则表达式用Python方言编写:
^( )*#(\s+\S(.*\S)?)?$
任何人都可以看到更好的方法吗?对于那些不确定它是什么的人:
它可以简化吗?
^( )*#(\s.*\S)?$
答案 0 :(得分:5)
重写正则表达式以增强可读性的一种方法(减少计算连续空格的机会):
^( {4})*#(\s.*\S)?$
用@Noctis的话说,它缩短了编译器的调试输出。
从(\s.*\S)?
(\s+\S(.*\S)?)?
的程序
\s+
=> \s(\s)*
\S(.*\S)?
=> \S
或\S.*\S
=> (\S.*)?\S
(\s+\S(.*\S)?)?
=> (\s(\s)*(\S.*)?\S)?
=> (\s.*\S)?
因为(\s)*(\S.*)?
=> .*
答案 1 :(得分:4)
您可以随时使用re.VERBOSE
标记,并将此处提供的说明添加为注释。 :)