正则表达式

正则表达式简单的规则:
















形式


字符范围


\xXX


编号在 0 ~ 255 范围的字符,比如:空格可以使用 “\x20” 表示


\uXXXX


任何字符可以使用 “\u” 再加上其编号的4位十六进制数表示,比如:“\u4E2D”

在表达式 “\s”,”\d”,”\w”,”\b” 表示特殊意义的同时,对应的大写字母表示相反的意义

<table style="border-collapse: collapse;" bgcolor="#f8f8f8" border="1" cellpadding="3" cellspacing="0">
  <tbody><tr bgcolor="#f0f0f0">
    <td width="55">

表达式

可匹配



\S

匹配所有非空白字符(”\s” 可匹配各个空白字符)



\D

匹配所有的非数字字符



\W

匹配所有的字母、数字、下划线以外的字符



\B

匹配非单词边界,即左右两边都是 “\w” 范围或者左右两边都不是 “\w” 范围时的字符缝隙


 在表达式中有特殊意义,需要添加 “\” 才能匹配该字符本身的字符汇总

<table style="border-collapse: collapse;" bgcolor="#f8f8f8" border="1" cellpadding="3" cellspacing="0">
  <tbody><tr bgcolor="#f0f0f0">
    <td width="55">

字符

说明



^

匹配输入字符串的开始位置。要匹配 “^” 字符本身,请使用 “\^”



$

匹配输入字符串的结尾位置。要匹配 “$” 字符本身,请使用 “\$”



( )

标记一个子表达式的开始和结束位置。要匹配小括号,请使用 “(“ 和 “)“



[ ]

用来自定义能够匹配 ‘多种字符’ 的表达式。要匹配中括号,请使用 “[“ 和 “]“



{ }

修饰匹配次数的符号。要匹配大括号,请使用 “{“ 和 “}“



.

匹配除了换行符(\n)以外的任意一个字符。要匹配小数点本身,请使用 “.“



?

修饰匹配次数为 0 次或 1 次。要匹配 “?” 字符本身,请使用 “\?”



+

修饰匹配次数为至少 1 次。要匹配 “+” 字符本身,请使用 “+“



*

修饰匹配次数为 0 次或任意次。要匹配 ““ 字符本身,请使用 “\



|

左右两边表达式之间 “或” 关系。匹配 “|” 本身,请使用 “|“


 括号 “( )” 内的子表达式,如果希望匹配结果不进行记录供以后使用,可以使用 “(?:xxxxx)” 格式

    举例1:表达式 “(?:(\w)\1)+“ 匹配 “a bbccdd efg” 时,结果是 “bbccdd”。括号 “(?:)” 范围的匹配结果不进行记录,因此 “(\w)” 使用 “\1” 来引用。

参考网站:

http://deerchao.net/tutorials/regex/regex.htm

http://www.regexlab.com/zh/regref.htm