• js中的正则表达式


    正则表达式Regular(规则) Expression(表达式)

                                规定一个字符串中字符出现的规律的表达式

                                xxx@qq.com/cn 1

                       when 只要使用一个种规则,模糊匹配关键词时

                       how

                                1.最简单的正则就是关键词原文

                                2、字符集:规定字符串中某一位字符,备选字符列表   只有一个字符,但是有多重选择字符

                                语法:[备选字符列表]

                                         每个字符集只能匹配一位字符,且每个字符集中至少匹配一次

                                         ex:[微wv][信x]   匹配到的内容: 微信 wx vx 微x v信 w信

                                           

                                简写:

                                         1.如果备选字符列表是连续的,可用-省略中间字符

                                         ex:

                                         一位数字:[0123456789]   ==>[0-9]

                                           

                                         一位小写字母:[a-z]

                                          

                                         一位大写字母:[A-Z]

                                         

                                         一位字母:[a-zA-Z]

                                    

                                         一位汉字:[u4e00-u9fa5]

                                        

                                         特殊:除了xx以外[^xx]^必须写在正则的开头

                                预定义字符集:对常用字符集的简写

                                         w   一位字母数字或_ [0-9a-zA-Z_]

                                             

                                         d  一位数字   [0-9]  digital(数位)

                                                  

                                         s  一位空字符  一切看不见的字符:空格,Tab

    ..                                     

                                         .   一位任意字符

                                            

                                         一个预定义字符集仅匹配一位字符,仅用于规定字符的内容

                                量词:专门规定一位字符集出现次数的规则,量词都是用于一个字符集只有默认修辞相邻的前一个字符集,量词需要用在字符后面

                                         1、有明确数量的边界

                                                   字符集{min,max} 规定字符集出现最少min次,最多max次

                                                   字符集{min,} 最少出现min次

                                                   字符集{n} 必须出现n次

                                         2、没有明确数量的边界

                                                   字符集?   可有可无,最多出现一次

                                                   字符集*   可有可无,多了不限

                                                   

                                                   字符集+   至少出现一个,多了不限

                                                   仅修辞相邻的前一个字符集

                                选择和分组

                                         分组:将多个字符集组成一组   可以让一个量词修饰多个字符集

                                                   ex: (字符集){}

                                         选择:"或"   匹配任意一个规则即可

                                                   ex: 规则1|规则2  (微|w(ei)?)(信|x(in)?)

                                匹配指定位置

                                         字符串的开头      ^ ex: ^s+ 开头的空字符

                                               

                                         字符串结尾        $ ex: s+$  结尾的空字符

                                                         

                                         单词边界           ex: no   匹配no这个单词,但是前和后可以用标点或者空格和其他字符隔开

                                手机号

                                (+86|0086)?       +86或0086

                                s*                空字符,可有可无,多了不限制

                                1

                                [3457869]           3,4,5,6,7,8,9中挑一个

                                d{9}              9位数字

                                (+86|0086)?s*1[3456789]d{9}   正则中间不要加空格,容易被解析成规则   +前加上否则会被解析成量词

                                 

                                邮箱

                                数字/字母或_   一次以上    w+

                                @  

                                字母或数字      2位以上     [0-9a-zA-Z]{2,}

                                (. 和 (字母或数字)  2-3位)    1-2次   

                                w+@[0-9a-zA-Z]{2,}[.][a-zA-Z]{2,3}([.][a-zA-Z]{1,3})?

                                    

  • 相关阅读:
    python版本切换及添加路径
    python下载及安装步骤
    day01计算机基础-python解释器-pycharm介绍
    查看pycharm有效期
    对于Makefile的基本使用
    Shell命令整理
    一起来免费听无损高品质音乐吧!
    记录 解决ubuntu16.04 ‘E: 无法获得锁 /var/lib/dpkg/lock-frontend
    Ubuntu16手动安装OpenStack——keystone篇
    python3中的RE(正则表达式)
  • 原文地址:https://www.cnblogs.com/Godfather-twq/p/11293724.html
Copyright © 2020-2023  润新知