`
云上太阳
  • 浏览: 132379 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

一次性搞定正则表达式

阅读更多

一次性搞定正则表达式

                                                                                                        ——我一直不太信任自己的记忆力,所以我把它们都写下来 

   

    从学java开始就在接触正则表达式,然后一直都没有精确的掌握它,今天有一个正则表达式的需求,然后又花了半小时梳理了下。下面我们一步一步开始(请仔细记清楚一步步的操作,否则你都不想往下看了 ),推荐大家打开http://tool.oschina.net/regex/ 在线正则表达式边看边测试

 

  • ^$表示以字符串开始和以字符串结尾。例:^abc 表示必须以abc开始(如:abcd,abcefd),abc$ 表示必须以abc结尾(如:);^abc$ 只能是abc(abc是个整体,abcabc不匹配) ;abc 表示包含abc的字符串
  • * + 和 分别表示出现0次或多次,1次或多次,0次或1次。例:abc*表示有0个或多个abc,其他两个同理
  • 上面的*+?完全可以用范围代替,abc{2}表示ab后面有至少两个c,如abcc,dfdabccccc都是符合的;abc{2}$ 只有以abcc结尾的符合,如343abcc   
  • abc{1,2} 表示ab后面跟着1或2个c;
  • abc{3,} 表示ab后面跟着至少3个c; {,3}这种是不正确的
  • |  或运算  ab|cd 表示字符串里有ab或者cd;
  • . 可以替换任意字符

下面是几种是需要记住的

"[ab]":表示一个字符串有一个"a""b"(相当于"a|b");
"[a-d]"
:表示一个字符串包含小写的'a''d'中的一个(相当于"a|b|c|d"或者"[abcd]");
"^[a-zA-Z]"
:表示一个以字母开头的字符串;
"[0-9]%"
:表示一个百分号前有一位的数字;
",[a-zA-Z0-9]$"
:表示一个字符串以一个逗号后面跟着一个字母或数字结束。

 

下面看看具体的实例,比如我今天做的:一个输入框,可以输入数字,也可以输入多个数字用逗号隔开,或者两个数字用~分隔。

      我写的正则表达式 :  ((^[0-9]+[~]?)?|^([0-9]+[,])+)[0-9]+$

1
2
分享到:
评论

相关推荐

    正则表达式

    正则表达式中的特殊字符 字符 含意 \ 做为转意,即通常在"\"后面的字符不按原来意义解释,如/b/匹配字符"b",当b前面加了反斜杆后/\b/,转意为匹配一个单词的边界。 -或- 对正则表达式功能字符的还原,如"*"匹配它...

    教你轻松搞定javascript中的正则

    正则表达式的灵活性和功能强大,但同时也因为其复杂的语法而显得难以理解。 1.1 什么是正则表达式 正则表达式是用于匹配字符串中特定字符组合的模式。它可以用来验证用户输入、搜索文本、替换文本中的某些部分,...

    txt格式电子书排版经验【精选文档】.doc

    我们可以使用正则表达式来查找和替换一行空行。启动 EditPlus,打开待处理的文本类型文件,选择“查找”菜单的“替换”命令,弹出文本替换对话框。选中“正则表达式”复选框,表明我们要在查找、替换中使用正则...

    2020版-系统搞定Python分布爬虫.rar

    通过这个教程,你可以系统地学习Python分布式爬虫,掌握从基础到高级的爬虫技术,无论是为了个人兴趣还是职业发展,都将是一次宝贵的提升。同时,提供的源码和课件可以作为实践操作的参考,帮助你在实际操作中更好地...

    代码之美(中文完整版).pdf

    第1章 正则表达式匹配器 。 1.1 编程实践 1.2 实现 1.3 讨论 1.4 其他的方法 1.5 构建 1.6 小结 第2章 Subversion中的增量编辑器:像本体一样的接口 2.1 版本控制与目录树的转换 2.2 表达目录树的差异 2.3 增量编辑...

Global site tag (gtag.js) - Google Analytics