常用的元字符表

匹配字符

元字符 说明
\ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 后向引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("
\cx 匹配由x指明的控制字符, \cM 匹配一个 Control-M 或回车符。 x 的值必须为 A-Z 或 a-z 之一。否则,将 c 视为一个原义的 'c' 字符
\f 匹配一个换页符,等价于\x0c和\cL
\n 匹配一个换行符,等价于\x0a和\cJ
\r 匹配一个回车符,等价于\x0d和\cM
\t 匹配一个制表符,等价于\x09和\cl
\v 匹配一个垂直制表符,等价于\x0b和\cK
. 匹配除换行符以外的任意字符
\w 匹配字母或数字或下划线[a-zA-Z0-9_]
\W 匹配非单词字符,等价于1
\s 匹配任意的空白符,等价于[\f\n\r\t\v]
\S 匹配任意非空白字符,等价于2
\d 匹配数字

匹配位置

元字符 说明
\b 匹配单词的开始或结束
\B 匹配非单词边界。
^ 匹配字符串的开始
$ 匹配字符串的结束

匹配次数

元字符
* 匹配前面的子表达式零次或多次,等价于{0,}
+ 匹配前面的子表达式一次或多次,等价于{1,}
? 匹配前面的子表达式零次或一次,等价于{0,1}
{n} n是一个非负整数。匹配确定的n次
{n,} n是一个非负整数,至少匹配n次
{n,m} m 和 n 均为非负整数,其中 n <= m。最少匹配 n 次且最多匹配 m 次

实例

  1. 匹配身份证号码:15位的全为数字,18位的前17位为数字,最后一位为数字或者大写字母”X“

    
    **/(^\d{15}$)|(^\d{18}$)/**
  2. 匹配自定义密码:以字母开头,长度在6~18位之间,只能包含数字,字母,下划线

    **/[a-zA-Z]\w{5,17}/**
    
  3. 匹配长度为3的字符:该字符可以是任意字符

    **/^.{3}$/**
    
  4. 匹配ip

    **/^(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])(\.25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9]){3}$/**

  1. a-zA-Z0-9
  2. \f\n\r\t\v

wangfulin
6.1k 声望107 粉丝