美文网首页
正则表达式的基本语法

正则表达式的基本语法

作者: usopp酱 | 来源:发表于2018-05-15 22:41 被阅读0次

    1. 正则表达式

    • 最基本的使用场景:例如在一些注册账号的时候需要填邮箱、手机号的时候,正则表达式可以判断在填手机号的时候,是否是数字,邮箱规则是否正确。即表单判断。
    • 含义:是js有个对象,通过一些规则,对字符串进行匹配,看是否匹配上,可以拿到匹配结果。
      用2种方式创建正则表达式

    2. 创建正则表达式(2种)

    (1) 构造函数

    var reg=new RegExp("abc","g")//必须为字符串,第二个参数为在匹配过程中需要遵循某些规则
    

    (2).字面量

    var reg=/abc/g;//如果是字面量,内容直接写在'//'里面,第二个参数紧接在后
                   //在控制台显示/abc/g,这个不是字符串,是控制台对正则表达式一个人性化的展示
    

    最后的g代表全局,还有几个修饰符

    • g:global,全文搜索,不添加的话搜索到第一个结果停止搜索
    • i:ingore case,忽略大小写,默认大小写敏感
    • m:multiple lines,多行搜索

    3.元字符(在正则表达式代表特别的意义)

    ( [ { \ ^ $ | ) ? * + .
    
    字符 含义
    \ 转义符,如果\后不是特别的字母,\代表的转义的,可以转义元字符;例如'a*'.match(/a*/g);得到的是["a*"]
    [ ] 在[ ]代表匹配这个范围内的的字符。例如[a-g],代表匹配这个范围内的一个字符
    ^ 以xxx为开头,例如/^hello/,必须以hello开头的
    $ 以xxx的结尾
    [^ ] 不匹配里面任何字符
    . 除了/r/n所有的字符
    \r 回车符
    \n 换行符
    \f 换页符
    \v 垂直制表符
    \0 空字符

    量词

    字符 含义
    * 匹配前面字符0次或多次,等价于{0,}
    匹配前面字符 0次或1次,等价于{0,1},如果紧跟在任何量词 *、 +、? 或 {} 的后面,将会使量词变为非贪婪的(匹配尽量少的字符),和缺省使用的贪婪模式(匹配尽可能多的字符)正好相反。
    + 匹配前面字符1次或多次,等价于{1,}
    {n} 匹配n次
    {n,m} 出现n到m次
    {n,} 至少出现n次

    边界

    字符 含义
    ^ 以xxx开头
    $ 以xxx结尾
    \b 单词边界
    \B 非单词边界

    预定义类

    字符 等价类 含义
    . [^/r/n] 除了回车符和换行符之外的所有字符
    \d [0-9] 数字字符
    \D [^0-9] 非数字字符
    \s [\t\n\x0B\f\r] 空白符
    \S [^\t\n\x0B\f\r] 非空白符
    \w [a-zA-Z_0-9] 单词字符,字母、数字下划线
    \W [^a-zA-Z_0-9] 非单词字符

    相关文章

      网友评论

          本文标题:正则表达式的基本语法

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