接上回书,上回书说到:找到了验证正则表达式的工具,就能有效的验证自己创造的正则表达式是不是正确了。
一、匹配单个字符
1,匹配纯文本
文本:
Welcome to RegExr v2.1 by gskinner.com, proudly hosted by Media Temple!
Edit the Expression & Text to see matches. Roll over matches or the expression for details. Undo mistakes with ctrl-z. Save Favorites & Share expressions with friends or the Community. Explore your results with Tools. A full Reference & Help is available in the Library, or watch the video Tutorial.
正则表达式:
to
匹配结果:
Welcome to RegExr v2.1 by gskinner.com, proudly hosted by Media Temple!
Edit the Expression & Text to see matches. Roll over matches or the expression for details. Undo mistakes with ctrl-z. Save Favorites & Share expressions with friends or the Community. Explore your results with Tools. A full Reference & Help is available in the Library, or watch the video Tu(to)rial.
Tips:
to 因为是一个单词,纯文本,不像是正则表达式。但是它确实是!像这样使用正则是一种浪费。但是很利于初步理解正则表达式。
注意到没有。正则表达式:to 不仅将文本中的单词to匹配了出来,还讲单词中包含to中两个字母的也匹配了出来。这就说明,to的匹配是全局的,且没有做到 :位置匹配,即单个的文本正则表达式不能区分单词!
2,匹配任意字符
文本:假设要按照文件名来搜索文件,但是忘记了文件名中的一个单词
works.exe
work1.xml
na1.xls
na2.xls
sa1.xsl
正则表达式:
work.
匹配结果:
works
work1
Tips:
注意到没有,这里用到了一个比较厉害的字符(.) 。 (.)字符可以匹配任何单个的字符、字母、数字甚至是(.)自身。
这个字符就相当于DOS命令的“?”问号 ,SQL中的“_”下划线一样。
3,匹配特殊字符
在正在表达会中,有时候需要去匹配有特殊含义的字符比如你需要匹配 . 就像上面将的, . 在 正则表达式里的作用是匹配任意字符的。当我们要匹配 . 自身的时候应该怎么做?
这时候就用要用了 \ (反斜杠)——转义字符。
文本:
works.exe
work1.xml
na1.xls
na2.xls
sa1.xsl
正则表达式:
work.\.
结果:
works.
work1.
Tips:
\(反斜杠)是一个元字符。表示:这个字符有特殊含义,而不是字符本身的含义
小结:
(1)正则表达式经常被被简称为模式;
(2)正则表达式其实是一些字符组构成的字符串;
(3)正则表达式可以由普通字符(纯文本)和元字符(. \ 等)组成
(4). 可以匹配任意单个字符
(5)\(反斜杠)用来对有特殊含义的字符进行转义