黑马程序员技术交流社区

标题: 关于正则的一些个人理解 [打印本页]

作者: 闭关修行小和尚    时间: 2015-12-31 21:09
标题: 关于正则的一些个人理解
正则表达式其实是用来操作字符串的一些规则。
好处:正则的出现,对字符串的复杂操作变得更为简单。
特点:将对字符串操作的代码用一些符号来表示。只要使用了指定符号,就可以调用底层的代码对字符串进行操作。符号的出现,简化了代码的书写。
弊端:符号的出现虽然简化了书写,但是却降低了阅读性。 其实更多是用正则解决字符串操作的问题。
组:用小括号标示,每定义一个小括号,就是一个组,而且有自动编号,从1开始。 只要使用组,对应的数字就是使用该组的内容。别忘了,数组要加\\ (aaa(wwww(ccc))(eee))技巧,从左括号开始数即可。有几个左括号就是几组。
常见操作:
1,匹配:其实用的就是String类中的matches方法。
String reg = "[1-9][0-9]{4,14}";
boolean b = qq.matches(reg);//将正则和字符串关联对字符串进行匹配。
2,切割:
其实用的就是String类中的split方法。
3,替换:
其实用的就是String类中的replaceAll();
4,获取:  
     1),先要将正则表达式编译成正则对象。使用的是Pattern中静态方法 compile(regex);
    2),通过Pattern对象获取Matcher对象。 Pattern用于描述正则表达式,可以对正则表达式进行解析。 而将规则操作字符串,需要从新封装到匹配器对象Matcher中。 然后使用Matcher对象的方法来操作字符串。 如何获取匹配器对象呢?
通过Pattern对象中的matcher方法。该方法可以正则规则和字符串想关联。并返回匹配器对象。
3),使用Matcher对象中的方法即可对字符串进行各种正则操作。


作者: 542826323    时间: 2016-1-1 11:32
非常到位,感谢楼主!
作者: Yaoluhao01    时间: 2016-1-16 07:26
总结的很好,感谢分享
作者: liuzegang    时间: 2016-2-9 22:58
总结的很好,受教了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2