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

原创 2015年11月18日 18:46:14

题记:正则表达式看起来比较麻烦,但是真正用的时候发现并没有那么难,它是一个非常强大的工具。初学可以看下著名的: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   


相关文章推荐

正则总结:正则表达式在js中的高级应用

正则总结:正则表达式在js中的高级应用 子模式 上一篇文章的最后部分中的var reUrl = /^(http):\/\/nowamagic\.(net)$/gi;已经涉及到子...

正则总结:JavaScript中的正则表达式

定义 在javascript我们可以通过内建的类来定义一个正则表达式。 var reName = new RegExp("nowamagic"); 实际上RegExp类的构造函数可以接受两个参数,...

靓号正则表达式(前后向查找等) 和 apache正则包使用

 开源应用 正则表达式ApacheQQJDK  一般公司在开发一类对的号码时,会预留一些号码给以后升级的会员使用,比如旺旺靓号,QQ号等,采用正则表达式实现较好,通过规则引擎的后台...

【正则表达式】使用正则来取html中的正文的bug【原创】

今天碰到了一个问题,在写PHP,使用正则表达式来获取html中的body内容的时候,遇到了一个bug,不多说,先上代码,先上要取的html文件: 8/index.html: char...

UE/US正则表达式查找搜索替换,查询的字符串未找到(UE studio/ultraEdit)/修改UE使用Perl正则引擎

UE默认使用UltraEdit正则表达式,就是UE自己改造过的正则语法,跟常用的perl兼容正则表达式语法不一致,所以即使写对了正则表达式,还会显示“查询的字符串未找到”。 这就需要修改UE的正则引...

深入入门正则表达式(java) - 3 - 正则在java中的使用

jdk版本选为1.6 1.5,1.4中的正则bug较多   我们先来总结一下java正则流派的特性,这里直接完全引用《精通正则表达式》中的表格 1.字符缩略表示法 \a [\b] \e \...

正则表达式(二)——java中使用正则

相关类位于:java.util.regex包下面类Pattern: 一正则表达式的编译表示形式。 一Pattern p = Pattern. compile(r,int)//建立正则表达式,并启用相应...

常用正则表达式,正则

  • 2010年01月14日 21:53
  • 2KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:正则表达式使用总结--记录项目中遇到的自己未解决的正则
举报原因:
原因补充:

(最多只允许输入30个字)