黑马程序员技术交流社区
标题:
JAVA正则表达式简单总结
[打印本页]
作者:
邵新瑜
时间:
2012-12-11 14:55
标题:
JAVA正则表达式简单总结
正则表达式定义:符合一定规则的表达式。
作用:用于专门操作字符串。
特点:用于一些特定的符号来表示一些代码操作,这样就简化书写。
正则表达式的具体操作:
1,匹配 String matches()方法.
2,分割 String split()方法.
3,替换 String replaceAll(String regex,String str)
4,获取
1.将正则表达式封装成对象
Pattern p = Pattern.compile(regex);
2.正则表达式和要操作的字符串相关联,获得匹配器对象
Matcher m = p.matcher(str);
3.进行符合规则的子串查找
m.find();
4.获取匹配后的结果
m.group();
-----------------------------------------
例:
叠词,aa ,bbb 等
String reg = "(.)\\1+"; //为了让规则的结果被重用,可以把规则放在一个组里面,用()包含起来,如果要调用此组,用"
\\1
"数字表
示,1代表第一组.如果有多个组,捕获组可以通过从左到右计算其开括号来编号.例如,在表达式 ((A)(B(C))) 中,存在四个这样的
组:
1 ((A)(B(C)))
2 (A)
3 (B(C))
4 (C)
查找出来的叠词可以用来切割
String str = erkktyqqquizzzzzo;
str.split(reg); //er ty ui o
可以把重复的字符串替换成单个字母
str.replaceAll(reg,"$1");// 用$1来表示已经匹配且提取出来的组
一定要会的例子,对邮件地址校验
代码:
String str ="[a-zA-Z0-9_]+@[a-zA-Z0-9]+([url=file://\\.[a-zA-Z]\\.[a-zA-Z[/url]]+)+";
较为精确的匹配
代码:
reg = "\\w+@\\w+(\\.\\w+)+";
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2