美文网首页
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