正则表达式由一些普通字符和一些元字符(metacharacters)组成。普通字符包括大小写的字母和数字,而元字符则具有特殊的含义,我们下面会给予解释。


    在最简单的情况下,一个正则表达式看上去就是一个普通的查找串。例如,正则表达式"testing"中没有包含任何元字符,它可以匹配"testing"和"123testing"等字符串,但是不能匹配"Testing"。


要想真正的用好正则表达式,正确的理解元字符是最重要的事情。下表列出了所有的元字符和对它们的一个简短的描述。

元字符描述信息
   .匹配任意单个字符
  []指定范围内的单个字符//[abcd]只要含有abcd任意字符即满足条件
  [^]指定范围之外的单个字符//[^abcd]不能含有abcd任意字符即满足条件
  ^[]定位至行首//^[a-z]以小写字母开头的行
   *

o*表示重复前一个字符 0到无穷多次,注意和通配符的区别,通配符*表示任意字符。

  +表示重复前一个字符1到无穷多次,至少1次
  ?匹配前一个字符0或1次,注意和通配符的区别。
\{\}表示匹配的准确次数.\{n,m\}:匹配次数n到m次;\{n,\}:匹配次数至少n次;\{n\}:匹配次数为n次\{\}
 |

x|y  匹配x或者y

\b

锚定单词边界(同“\<”和“\>”。\<锚定单词词首的,\<ro  匹配以ro开头的单词

\>锚定单词词尾的,er\>匹配以er结束的单词) \broot\b匹配root单词

\B匹配非边界单词er\B匹配不以er结尾的单词
\(\)分组,将 \( 和 \) 之间的表达式定义为“组”(group),并且将匹配这个表达式的字符保存到一个临时区域(一个正则表达式中最多可以保存9个),它们可以用 \1 到\9 的符号来引用。
$结束表示符。\.$以.结尾的行,注意\是转义符
  \转义符,去掉字符的特殊含义,使其成为普通字符。例如上面,.原本是特殊字符,表示任意单个字符,使用\转义之后,其就表示本身,就表示一个句点"."
[[:upper:]]表示[A-Z]
[[:alnum:]]表示[0-9a-zA-Z]
[[:lower:]]表示[a-z] 
[[:space:]]表示空格或者tab键
[[:digit:]]表示[0-9]
[[:alpha:]]表示[a-zA-Z]
[[:punct:]]表示标点符号



以上是一些我们平时经常能用到的元字符以及其代表的意义,我也是一个菜鸟,欢迎大家进行补充

范例呢,网上也多,整理的也就是一些基本的知识,下面上传一个文件,是正则表达式的chm帮助文档。