美文网首页
正则表达式学习

正则表达式学习

作者: SuYongZhi | 来源:发表于2018-11-29 21:55 被阅读0次

    正则表达式:也叫规则表达式,按照一定的规则组成的一个表达式,作用主要是匹配字符串。

         正则表达式的组成:是由元字符或者限定字符组成的一个式子
         
          元字符:
         
         . 表示得的是:除了\n以外的任意的一个字符  "fsdfg520"
         
          [] 表示的是:范围.[0-9]  表示的是0到9之间的任意的一个数字,"4567" [0-9]
          [1-7] 表示的是1到7之间的任意的数字
         
          [a-z] 表示的是:所有的小写字母的任意的一个
          [A-Z] 表示的是:所有大写字母的任意的一个
          [a-zA-Z] 表示的是:所有字母的任意的一个
          [0-9a-zA-Z] 表示的是:所有的数字或者字母中的一个
          [] 另一个含义:把正则表达式中元字符的意义干掉 [.] 就是一个.
         
          限定符
         
          | 表示的是:或者 [0-9]|[a-z] 表示的是要么是数字,要么是小写的字母
         
          () 表示的是:分组,提升优先级 [0-9]([a-z])|[A-Z]
          ([0-9])([1-5])([a-z]) 三组,从最左边开始计算
         
         * 表示的是:前面的表达式出现了0次到多次
          [a-z][0-9]* 表示的是: 小写字母的任意的一个,后面要么是没有数字,要么是多个数字
          "asdfa2343241" [a-z][0-9]*
         
          + 表示的是:前面的表达式出现了1次到多次
          [a-z][9]+ 小写字母一个后面最少一个9,或者多个9
          "fsdf9asf"
         
          ? 表示的是:前面的表达式出现0次到1次,最少0次,最多1次,另一个含义:阻止贪婪模式
          [4][a-z]? "1234dsf"
         
          限定符:限定前面的表达式出现的次数
          {} 更加的明确前面的表达式出现的次数
          {0,} 表示的前面的表达式出现了0次到多次,和*一样的
          {1,} 表示的前面的表达式出现了1次到多次,和+一样的
          {0,1} 表示的前面的表达式出现了0次到1次,和?一样的
         
          {5,10} 表示的是前面的表达式出现了5次到10次
          {4} 表示的是前面的表达式出现了4次
         
          ^ 表示的是以什么开始,或者是取非(取反)
          ^[0-9] 以数字开头
          ^[a-z] 以小写字母开头
          [^0-9] 取反,非数字
          [^a-z] 取反,非小写字母
          
          $ 表示的是以什么结束
          [0-9][a-z]$  必须以小写字母结束
         
         
          \d 数字中的任意一个
          \D 非数字中的一个
          
          \s 空白符的一个
          \S 非空白符
         
          \w 非特殊符号
          \W 特殊符号
         
          \b 单词的边界 
         
         
          写正则表达式,根据字符串来写正则表达式进行匹配
         
          身份证的正则表达式
          15位或者18位
          ([1-9][0-9]{14})|([1-9][0-9]{16}[0-9xX])
         
          练习:
          1.座机号码的正则表达式
          010-19876754
          0431-87123490
         
          [0-9]{3,4}[-][0-9]{8}
          \d{3,4}[-]\d{8}
         
          2.QQ号码正则表达式
          [1-9][0-9]{4,10}
          \d{5,11}
         
          3.手机号码的正则表达式
         
         
          邮箱的正则表达式,必须记住
          sd211_2.-fd@dssdfsd.com.cn
          [0-9a-zA-Z_.-]+[@][0-9a-zA-Z_.-]+([.][a-zA-Z]+){1,2}

    相关文章

      网友评论

          本文标题:正则表达式学习

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