正则表达式

1.量词

*

匹配前面的子表达式任意次。例如,zo*能匹配“z”,也能匹配“zo”以及“zoo”。*等价于{0,}。

+

匹配前面的子表达式一次或多次(大于等于1次)。例如,“zo+”能匹配“zo”以及“zoo”,但不能匹配“z”。+等价于{1,}。

?

匹配前面的子表达式零次或一次。例如,“do(es)?”可以匹配“do”或“does”。?等价于{0,1}。

{n}

n是一个非负整数。匹配确定的n次。例如,“o{2}”不能匹配“Bob”中的“o”,但是能匹配“food”中的两个o。

{n,}

n是一个非负整数。至少匹配n次。例如,“o{2,}”不能匹配“Bob”中的“o”,但能匹配“foooood”中的所有o。“o{1,}”等价于“o+”。“o{0,}”则等价于“o*”。

{n,m}

mn均为非负整数,其中n<=m。最少匹配n次且最多匹配m次。例如,“o{1,3}”将匹配“fooooood”中的前三个o为一组,后三个o为一组。“o{0,1}”等价于“o?”。请注意在逗号和两个数之间不能有空格。

  

    范围:

      \d   <=> [0-9]

      [范围]===》[a-z]  [A-Za-z] ,[13579] [1-37-9]

      [^范围] ====》不在范围内的 [^2-6]

      |  x|y  ==  [xy]

      ()===>整体  1(3\d)|(8[13589])|(7[136])

  实例:

  1.判断输入的电脑号码是否正确

  

电话号码:      placeholder="请输入电话号码" pattern="^(\+86)?1((3[0-9])|(5[0-9])|(7[135-8])|(8[0-35-9])|(9[17]))\d{8}$"/>
/*分析  

1. +86可以出现一次或0次
2.号段:13[0-9],15[0-9],166,17[135-8],18[0-35-9],19[17]
3.\d{8}

/*

  2.判断邮箱是否输入正确

分析:

  1.开头:[A-Za-z0-9]{5,16}
  2.必须包含的符号:@
  3.@后面跟的字符:[a-z0-9]{2,5}
  4.(.com|.cn)

邮箱:
                pattern="^[A-Za-z0-9]{5,16}@[a-z0-9]{2,5}\.((com)|(cn))$" title="请输入正确的邮箱"
                 />

  3.判断是否为非负整数

  4.判断是否为整数

注:上面只是个人见解,本人初学者,如有不足之处,还望各位大牛批评指正。

你可能感兴趣的:(正则表达式)