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

原创 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   


项目中遇到的问题及解决思路

有时遇到一个小问题,但不知道解决方法,就晕死。最近就遇到了两个,开始头大,后来解决了,其实发现也没那么复杂,不过还是记录下来,以便以后遇到这样的问题,可以有所参考。    第一个问题,就是前段时间做D...
  • see_you_in_the_past
  • see_you_in_the_past
  • 2015年01月09日 15:43
  • 1239

项目中遇到的 问题及解决方案

1.Caused by: libcore.io.GaiException: getaddrinfo failed: EAI_NODATA 解决方案:1).android设备网络连接没打开,例如...
  • Dreamfree3
  • Dreamfree3
  • 2016年03月01日 15:47
  • 1623

Android--面试中遇到的问题总结(三)

《Android 开发工程师面试指南 LearningNotes 》,作者是陶程,由梁观全贡献部分。大家可以去知乎关注这两位用心的少年。这份指南包含了大部分Android开发的基础、进阶知识,不仅可以...
  • chaoyu168
  • chaoyu168
  • 2017年02月22日 10:50
  • 2490

java开发中所遇到的问题归纳与总结

1,如何避免null值引发的异常()
  • yongbuyanqi88888
  • yongbuyanqi88888
  • 2014年09月04日 15:00
  • 286

面试问题某个项目中遇到过什么问题

这是面试官很喜欢问的一个问题,你是会刁难你的一个地方。如果你在项目中是核心解决了一些技术难题,那这个问题对你来说应该是很好回答的。你可以说出这个项目遇到的技术问题,以及你是怎么解决的。这种问题往往可以...
  • hxpjava1
  • hxpjava1
  • 2017年03月03日 19:45
  • 2234

最近做网页前端项目时遇到的一些问题以及解决方案

这几天和同学一起接了老师布置的两个网页项目,虽然只做前端静态页面,但是真正实践的时候我发现有些东西还是要用一用,出点错才能记得解决方案。第一个:设置宽屏效果 当我们需要顶部的banner横向充满整个...
  • u012036171
  • u012036171
  • 2015年04月23日 23:27
  • 3643

PHP项目发现并处理的问题

最近在做项目,在项目过程中遇到许多的问题,记录下,以便以后查阅问题一:在本机插网线的本地测试环境下面,测试发送邮件找回密码的功能一切正常,切换到另外一个wifi网络环境下面的不正常了,刚开始不知道是什...
  • qq_21405949
  • qq_21405949
  • 2016年08月28日 15:05
  • 876

项目开发遇到的问题及其解决.总结

1.eclipse 导出 doc  出现“The Javadoc command does not exist.” javadoc command 选择 jdk/bin/javadoc.exe 2.t...
  • wolongjiangjun
  • wolongjiangjun
  • 2009年11月01日 18:18
  • 3199

【Web前端】Vue.js 项目中遇到的一些问题汇总

前言最近在自己用 Vue.js 做一个仿网易云的 webApp,遇到了不少的问题,在这里做一个记录better-scroll 的使用问题better-scroll 是 Vue.js 中很好用的一个插件...
  • gyjyywc
  • gyjyywc
  • 2017年06月27日 23:00
  • 1578

java面试中遇到的问题

此博客持续更新中,欢迎大家指正,提供答案 1.Struts2的核心拦截器是什么? FilterDispatcher也是Struts2的核心技术。 FilterDispatcher核心控制器执行以下操作...
  • yin767833376
  • yin767833376
  • 2016年05月12日 20:50
  • 1364
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:正则表达式使用总结--记录项目中遇到的自己未解决的正则
举报原因:
原因补充:

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