正则表达混淆\ s和“”

时间:2012-06-01 00:04:36

标签: regex

在正则表达式中,我知道何时使用\来表示空格,但是,在下面的情况下,它们会有所不同:

  1. / a \ sb / --- with a s
  2. / a b / --- with empty field
  3. 如果你能向我解释,非常感谢。

1 个答案:

答案 0 :(得分:15)

\ s字符类匹配所有“空白字符”,而不仅仅是空格。这包括制表符(\ t),如果允许多行匹配,则它包括回车符(\ r)和换行符(\ n)。从理论上讲,如果您的正则表达式引擎处理unicode,那么也可以匹配unicode空白字符,尽管您的里程可能会有所不同。

所以使用像“a \ t b”这样的字符串,你可以将它与正则表达式/ a \ s + b /匹配,以防对你有用。