Js regular exprission

系统 1443 0
      
        正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。



匹配中文字符的正则表达式: [\u4e00
      
      -
      
        \u9fa5]

评注:匹配中文还真是个头疼的事,有了这个表达式就好办了

匹配双字节字符(包括汉字在内):[
      
      ^\x00-
      
        \xff]

评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

匹配空白行的正则表达式:\n\s
      
      *
      
        \r

评注:可以用来删除空白行

匹配HTML标记的正则表达式:
      
      <(\S*?)[^>]*>.*?</>|<.*? />
      
        

评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力

匹配首尾空白字符的正则表达式:
      
      ^\s*|\s*
      
        $

评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式

匹配Email地址的正则表达式:\w
      
      +([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
      
        

评注:表单验证时很实用

匹配网址URL的正则表达式:[a
      
      -zA-z]+:
      
        //
      
      
        [^\s]*
      
      
        评注:网上流传的版本功能很有限,上面这个基本可以满足需求

匹配帐号是否合法(字母开头,允许5
      
      -16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-
      
        9_]$

评注:表单验证时很实用

匹配国内电话号码:\d
      
      -\d|\d-
      
        \d

评注:匹配形式如 
      
      
        0511
      
      -
      
        4405222
      
        021
      
      -
      
        87888822
      
      
        

匹配腾讯QQ号:[
      
      
        1
      
      -
      
        9
      
      ][
      
        0
      
      -
      
        9
      
      
        ]

评注:腾讯QQ号从10000开始

匹配中国邮政编码:[
      
      
        1
      
      -
      
        9
      
      ]\d(?!
      
        \d)

评注:中国邮政编码为6位数字

匹配身份证:\d
      
      |
      
        \d

评注:中国的身份证为15位或18位

匹配ip地址:\d
      
      +\.\d+\.\d+\.\d+
      
        

评注:提取ip地址时有用

匹配特定数字:


      
      ^[
      
        1
      
      -
      
        9
      
      ]\d*$    
      
        //
      
      
        匹配正整数
      
      

^-[
      
        1
      
      -
      
        9
      
      ]\d*$   
      
        //
      
      
        匹配负整数
      
      

^-?[
      
        1
      
      -
      
        9
      
      ]\d*$   
      
        //
      
      
        匹配整数
      
      

^[
      
        1
      
      -
      
        9
      
      ]\d*|
      
        0
      
      $  
      
        //
      
      
        匹配非负整数(正整数 + 0)
      
      

^-[
      
        1
      
      -
      
        9
      
      ]\d*|
      
        0
      
      $   
      
        //
      
      
        匹配非正整数(负整数 + 0)
      
      

^[
      
        1
      
      -
      
        9
      
      ]\d*\.\d*|
      
        0
      
      \.\d*[
      
        1
      
      -
      
        9
      
      ]\d*$   
      
        //
      
      
        匹配正浮点数
      
      

^-([
      
        1
      
      -
      
        9
      
      ]\d*\.\d*|
      
        0
      
      \.\d*[
      
        1
      
      -
      
        9
      
      ]\d*)$  
      
        //
      
      
        匹配负浮点数
      
      

^-?([
      
        1
      
      -
      
        9
      
      ]\d*\.\d*|
      
        0
      
      \.\d*[
      
        1
      
      -
      
        9
      
      ]\d*|
      
        0
      
      ?\.
      
        0
      
      +|
      
        0
      
      )$  
      
        //
      
      
        匹配浮点数
      
      

^[
      
        1
      
      -
      
        9
      
      ]\d*\.\d*|
      
        0
      
      \.\d*[
      
        1
      
      -
      
        9
      
      ]\d*|
      
        0
      
      ?\.
      
        0
      
      +|
      
        0
      
      $   
      
        //
      
      
        匹配非负浮点数(正浮点数 + 0)
      
      

^(-([
      
        1
      
      -
      
        9
      
      ]\d*\.\d*|
      
        0
      
      \.\d*[
      
        1
      
      -
      
        9
      
      ]\d*))|
      
        0
      
      ?\.
      
        0
      
      +|
      
        0
      
      $  
      
        //
      
      
        匹配非正浮点数(负浮点数 + 0)
      
      
        评注:处理大量数据时有用,具体应用时注意修正

匹配特定字符串:


      
      ^[A-Za-z]+$  
      
        //
      
      
        匹配由26个英文字母组成的字符串
      
      

^[A-Z]+$  
      
        //
      
      
        匹配由26个英文字母的大写组成的字符串
      
      

^[a-z]+$  
      
        //
      
      
        匹配由26个英文字母的小写组成的字符串
      
      

^[A-Za-z0-
      
        9
      
      ]+$  
      
        //
      
      
        匹配由数字和26个英文字母组成的字符串
      
      

^\w+$  
      
        //
      
      
        匹配由数字、26个英文字母或者下划线组成的字符串
      
    

 

Js regular exprission


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论