正则表达式使用总结--记录项目中遇到的自己未解决的正则

前端之家收集整理的这篇文章主要介绍了正则表达式使用总结--记录项目中遇到的自己未解决的正则前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

题记:正则表达式看起来比较麻烦,但是真正用的时候发现并没有那么难,它是一个非常强大的工具。初学可以看下著名的:30分钟学会正则表达式,另外正则表达式验证工具有web版也有pc版,推荐RegexBudd,另外qq上有正则表达式群,里面有很多大牛,可以帮你解决一些你不会的正则表达式。本篇博客主要记录平时在项目中自己用到的不会的正则表达式。

1 匹配mac地址

代码是用js写的。要求匹配的mac地址类型是xxxx.xxxx.xxxx这种类型。
注意该匹配: ^用来匹配字符串的开始,$用来匹配字符串的结束。g是全局属性
var patternMac =/^\w{4}.\w{4}.\w{4}$/g;
        if(!patternMac.test(cm_select)){
            //成功匹配到
            return 0;
        }
        return 1;

2 要匹配的某个字段有两种不同的形式

要匹配的内容是:(想办法可以匹配到最后一列的数字,就是cnr这种形式)但是cnr的值有可能是xx也有可能是> 40这种形式,
用正则表达式:(?m)(\w{4}\.\w{4}\.\w{4}).+C3/0/0/U\d{1,2}\s+\D+\d+\s+\d+\.\d+\s+\w+\.\w+\s+(.*?)\s*$
其中{1,}表示出现一次或者多次,可以用+代替
其中*? 重复任意多次,尽量少重复;*重复零次或者更多次 $匹配字符串结束
前面的(?m):更改^和$的含义,使它们分别在任意一行的行首和行尾匹配,而不仅仅在整个字符串的开头和结尾匹配。(在此模式下,$的精确含意是:匹配\n之前的位置以及字符串结束前的位置.)
Time source is NTP,23:46:02.659 PST Tue Nov 17 2015
MAC Address    IP Address     I/F         MAC          Prim ExPwr  RxPwr  cnr
                                          State        Sid  (dBmv) (dBmv) (dB)
c8fb.26a8.1b40 ---            C3/0/0/U4   w-online(pt) 215  3.0    3.00   34     
c8fb.26a8.1b40 ---            C3/0/0/U5   w-online(pt) 215  3.0    3.00   34     
c8fb.26a8.1b40 ---            C3/0/0/U6   w-online(pt) 215  3.0    3.00   34     
c8fb.26a8.1b40 ---            C3/0/0/U7   w-online(pt) 215  3.0    2.50   32 
c8fb.26a8.1a02 5.152.4.124    C3/0/0/U0   w-online(pt) 1    3.0    2.50   36     
c8fb.26a8.1a02 5.152.4.124    C3/0/0/U1   w-online(pt) 1    3.0    3.00   36     
c8fb.26a8.1a02 5.152.4.124    C3/0/0/U2   w-online(pt) 1    3.0    2.00   40     
c8fb.26a8.1a02 5.152.4.124    C3/0/0/U3   w-online(pt) 1    3.0    2.50   33
c8fb.26a8.0f42 4.222.5.222    C3/0/0/U0   w-online(pt) 645  3.0    3.00   > 40   
原文链接:https://www.f2er.com/regex/359777.html

猜你在找的正则表达式相关文章