【发布时间】:2014-05-26 08:17:28
【问题描述】:
Python RegEx ^(.+?(\d*)) *$ 中的空格是什么意思?
pat = re.compile('^(.+?(\d*)) *$',re.M)
* 是指\s*吗?
可以忽略空格吗?即^(.+?(\d*)) *$ 是否与^(.+?(\d*))*$ 相同?
我跑了一些例子,上面两个问题的答案似乎都不是。
谢谢!
【问题讨论】:
-
空格是空格,
\s包括空格、换行符、制表符等等,具体取决于语言。 -
不,` *` 是任意数量的空格字符。
\s匹配更多的空格,而不仅仅是` `。 -
但是可以不使用前面的`\`进行转义吗?
-
@Tim 你不需要转义空格。基本上你所拥有的是“重复空间零次或多次”。其中空格是
0x20。检查this post 关于\s,这取决于它完全匹配的语言。 -
@Tim:空格不需要转义。如果它可以帮助您更清楚地阅读正则表达式,您可以使用
[ ]而不仅仅是空格。