深入入门正则表达式(java) - 1 - 入门基础
深入入门正则表达式(java) - 2 - 基本实例
深入入门正则表达式(java) - 3 - 正则在java中的使用
深入入门正则表达式(java) - 匹配原理 - 1 - 引擎分类与普适原则
深入入门正则表达式(java) - 匹配原理 - 2 - 回溯
本系列将带新手入门,之所以叫深入入门,就是想和网上的各种教程区分
正则总得来说虽然是简单,但是也不是30分钟就能搞定的事情。
内容是自己曾经积累的知识总结和书本的提炼:比如《精通正则表达式》 - 中文版第三版
整理过程中难免有错误,可能是笔误也可能是……
顺序是
1.基础知识
2.基本实例
3.java中的正则使用
4.匹配原理
5.技巧与优化
6.android中的正则
使用的测试工具是RegexBuddy
工具比较强大,可以模拟多种语言的正则,而且还支持正则中的debug
正则表达式的作用主要体现在字符串的查找与替换上。
比如我现在做的android开发,调试的时候总是有大量log,没等你看清内容是什么呢新log就把旧log挤掉了,log中夹杂了大量你不关心的内容,于是我经常在adb logcat后面加上grep保证只留下我希望看到的内容。
我相信大家在开发过程中肯定遇到过下面的情况:你想查找的内容并不是很确定
举个简单例子:比如你想找hate和like,文本中这样的字符串不多,一次都列出来的话你也很容易能应付过来,所以你并不希望自己要查询两次,那么可以用正则,如果是大写,你也希望匹配,那么也可以用正则……
这样的例子很多,下面我们就从最基础的内容开始,希望大家有点耐心
ps: 我非常反对从网上复制“常用”正则之类的内容,首先写这个的人是为了当时自己的需求而写,比如人家匹配电话是4位区号-7位电话,而之后电话号码升到8位了,于是你的正则就不灵了。这还是好的情况{7}改成{8}就行了,即使程序出了问题不会正则也能猜出来修改哪里。刚才随便在网上搜了一下 “常用正则”,于是发现一个人如下写到
^[0-9]*[1-9][0-9]*$ //匹配正整数
这有很多问题
首先它匹配到的确实是正整数,但是可能会匹配到01这样的类型,我想很多人不希望这样吧
前面的[0-9]*完全多余
还有一个例子
^((-\d+)|(0+))$ //匹配非正整数(负整数 + 0)
我不知道为什么这个人要加这么多括号,这样只会拖慢程序的速度,起码最里面的两个括号我想不到什么理由加上
不举例了,相信大家在复制的过程中都遭遇过尴尬
下面开始正题
在有java示例的时候几乎都要引入如下几个类,之后不再赘述。
import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.regex.PatternSyntaxException;
深入入门正则表达式(java) - 1 - 入门基础
深入入门正则表达式(java) - 2 - 基本实例
深入入门正则表达式(java) - 3 - 正则在java中的使用
深入入门正则表达式(java) - 匹配原理 - 1 - 引擎分类与普适原则
未完待续
转贴请保留以下链接
本人blog地址
相关推荐
Java 第三阶段增强分析需求,代码实现能力【正则表达式】---- 代码 Java 第三阶段增强分析需求,代码实现能力【正则表达式】---- 代码 Java 第三阶段增强分析需求,代码实现能力【正则表达式】---- 代码 Java 第三...
Java正则表达式详解-软件频道-正则表达式-天极网
JAVA正则表达式--Pattern和Matcher 现在JDK1.4里终于有了自己的正则表达式API包,JAVA程序员可以免去找第三方提供的正则表达式库的周折了,我们现在就马上来了解一下这个SUN提供的迟来恩物- -对我来说确实如此。...
正则表达式汇总
Java正则表达式Java正则表达式Java正则表达式Java正则表达式
正则表达式 正则表达式--常用的
常用正则表达式大全: 匹配中文字符的正则表达式 匹配空白行的正则表达式 匹配HTML标记的正则表达式 匹配Email地址的正则表达式 匹配网址URL的正则表达式 匹配国内电话号 匹配中国邮政编码 匹配身份证 匹配ip地址 ...
正则表达式--强大的文本匹配工具,每个工程师都需要掌握的必备技能。这个文档看过一小时,算是基本入门了。 前提是有良好的Linux基础,对grep awk sed 要熟练。
如果你曾经用过Perl或任何其他内建正则表达式支持的语言,你一定知道用正则表达式处理文本和匹配模式是多么...本文接下来的内容先简要地介绍正则表达式的入门知识,然后以Jakarta-ORO API为例介绍如何使用正则表达式。
java正则表达式java正则表达式java正则表达式java正则表达式java正则表达式java正则表达式
正则表达式---------资料整理,适合新手学习使用,对正则表达式的学习很有帮助
常用正则表达式-常用正则表达式-常用正则表达式 常用正则表达式-常用正则表达式-常用正则表达式
广告过滤正则式 来自闻仲 可以和大家交流一下
director正则表达式插件--强大的字符串匹配工具 demo, 正则表达式功能很强大,匹配字符串很容易,现在,在director中借助这款插件,也可以实现正式表达式的功能了,lingo处理字符串更加容易。
Java正则表达式应用-Jakarta-ORO篇,这里详细的统计了正则表达式的在java中的运用,
正则表达式之道.doc 正则表达式中的特殊字符.doc Java正则表达式详解.doc 正则表达式.ppt JAVA正则表达式--Pattern和Matcher.doc 例子
JAVA正则表达式JAVA正则表达式JAVA正则表达式
提取URL,正则表达式 - C# - 开发者参考网提取URL,正则表达式 - C# - 开发者参考网提取URL,正则表达式 - C# - 开发者参考网提取URL,正则表达式 - C# - 开发者参考网提取URL,正则表达式 - C# - 开发者参考网提取URL,...
正则表达式例子大全---正则表达式例子大全---常用的正则表达式都有
java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解