该手册页保持沉默这一点,尽管用户已张贴下方的评论,其中指出,与ASCII码字符0x09
,0x0A
,0x0C
,0x0D
,和0x20
,也就是TAB,LF,FF,CR和空间,被认为是“空白” ,但未提供任何来源。
显然,如果PCRE是与Perl兼容的,那么这可能不是那么简单,如本Perl文档中所述。实际上,它可能受语言环境的影响,然后开始变得多毛。
上下文是我正在尝试替换一个preg_match调用,该调用旨在检查仅空白字符串。
从PCRE文档中:
在PCRE,默认情况下
\d
,\D
,\s
,\S
,\w
,和\W
只承认ASCII字符,即使在UTF模式。但是,可以通过设置该PCRE_UCP
选项来更改。
根据此StackOverflow答案,当使用修饰符时,该PCRE_UCP
选项与一起设置。PCRE_UTF8
u
因此,如果不使用u
修饰符,则\s
只会匹配ASCII空格字符。如果这样做,确实会更加复杂。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句