关于\ d

时间:2013-01-21 06:22:33

标签: regex

在一个教程中,有这样的文字:

Windows 1.03和Windows 2.0 fisrt分别于1985年和1987年发布。 Windows 95和Windows 98是后继者。 然后出现了Windows 2000和Windows Xp。 Windows Vista是该系列的最新版本。

它使用Windows [\d.]+\b来匹配,但为什么结果只是

Windows 1.03  
Windows 2.0   
Windows 95   
Windows 98   
Windows 2000

我想知道[\d.]是什么意思?

1 个答案:

答案 0 :(得分:2)

\d表示任何数字。因此[\d.][0-9.]相同,并且会匹配任何数字或句点。

请注意,.通常表示“除\n之外的任何内容”,但在字符类([])中,它只表示实际的句点字符。

字符类中的特殊字符为:

  • ^一开始就是指“不是这些人物”
  • ]标记结束(除非它是第一个)
  • -标记范围(除非它是第一个或最后一个)
  • \x表示转义序列(虽然这取决于特定引擎)
  • [:foo:]用于POSIX字符类(这又取决于引擎)

其他任何东西都只是一个普通角色。