美文网首页
2019-03-20

2019-03-20

作者: whamai | 来源:发表于2019-03-20 08:43 被阅读0次

JavaScript  正则表达式

正则语法:

    $     匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 '\n' 或 '\r'。要匹配 $ 字符本身,请使用 \$。

    ( )    标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用 \( 和 \)。

    *     匹配前面的子表达式零次或多次。要匹配 * 字符,请使用 \*。

    +    匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 \+。

    .     匹配除换行符 \n 之外的任何单字符。要匹配 . ,请使用 \. 。

    [     标记一个中括号表达式的开始。要匹配 [,请使用 \[。

    ?     匹配前面的子表达式零次或一次,或指明一个非贪婪限定符。要匹配 ? 字符,请使用 \?。

    \      将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如, 'n' 匹配字符 'n'。'\n' 匹配换行符。序列 '\\' 匹配 "\",而 '\(' 则匹配 "("。

    ^      匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。要匹配 ^ 字符本身,请使用 \^。

    {  标记限定符表达式的开始。要匹配 {,请使用 \{。

    |  指明两项之间的一个选择。要匹配 |,请使用 \|。

基本验证

[0-9]      匹配任意单个数字

[a-z]      匹配任意单个小写字母

[A-Z]    匹配任意单个大写字母

[0-9]*   匹配任意单个数字,0次或多次

[a-z]+  匹配任意单个小写字母至少一次

[A-Z].[a-z] : 匹配大写字母和小写字母,中间必须由字符进行间隔

\(.*\) : 匹配小括号及括号中的所有内容

[0-9]{n} : 匹配数字出现n次

[0-9]{m,n} : 匹配数字出现最少m次最多n次

[0-9]{n,}  匹配数字至少出现n次,没有上限、

实操:

电话号码验证:

    ((13)|(15)|(17)|(18)|(19))[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]

    ((13)|(15)|(17)|(18)|(19))[0-9]{9}

    正式的格式 : /^((13)|(15)|(17)|(18)|(19))[0-9]{9}$/

名字验证:

    中文验证:所有的字符在码表中都有序号

        unicode编码表 : 中文的序号为4e00到9fa5

                        4e00转换为10进制  : 4*16*16*16 + 14*16*16 + 0*16 + 0*1

        \u4e00-\u9fa5

    [\u4e00-\u9fa5]{2,4}


扩展验证

[a-z0-9] 匹配一个字符它是数字或字母

[^0-9a-z] 匹配一个字符 不是数字或字母

\w (小写)

    匹配字母、数字、下划线。等价于'[A-Za-z0-9_]'

\W (大写)

    匹配非字母、数字、下划线。等价于 '[^A-Za-z0-9_]'。

案列:

日期拼接: (((19)|(20))?\d{2})-(((10|12|(0?[13578]))-(([12][0-9])|(3[0-1])|(0?[1-9])))|((11|(0?[469]))-(([12][0-9])|(30)|(0?[1-9])))|((0?2)-((1[0-9])|(2[0-9])|(0?[1-9]))))

相关文章

网友评论

      本文标题:2019-03-20

      本文链接:https://www.haomeiwen.com/subject/fkeamqtx.html