欢迎来到天天文库
浏览记录
ID:15722542
大小:30.27 KB
页数:7页
时间:2018-08-05
《正则表达式patten详解(转)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、正则表达式--Start如果你还不知道什么是正则表达式或者不是很清楚,请先阅读 正则表达式精萃。下面是一个在Java中使用正则表达式的简单例子。[java] viewplaincopyprint?1.import java.util.regex.Matcher; 2.import java.util.regex.Pattern; 3. 4.public class Test { 5. 6. public static void main(String[] args) { 7. 8. // Pattern 表示一个正则表达式 9. // Pat
2、tern 的构造方法是私有的 10. // 可以通过 compile 静态方法实例化 Pattern 对象 11. // 在实例化的同时我们可以不指定或指定一个或多个全局匹配模式 12. // 下面的代码构建了用来匹配固定电话号码的正则表达式, 采用不区分大小写和多行模式 13. Pattern p = Pattern.compile("(\d{3}\d?)-(\d{7}\d?)", Pattern.CASE_INSENSITIVE
3、Pattern.DOTALL); 14. 15.
4、16. // 将构建好的正则表达式与目标字符串关联得到一个 Matcher 对象 17. Matcher m = p.matcher("我的电话号码是 0411-88888888, 欢迎骚扰。"); 18. 19. 20. // find() 方法将会在目标字符串中查找符合正则表达式的子字符串, 如果找到则返回 true 21. // 再次调用 find() 方法将会在上次匹配的结束位置开始查找 22. // find(int start) 方法将从参数指定的位置开始查找符合正则
5、表达式的子字符串 23. if (m.find()) { 24. 25. // start() 方法返回整个匹配的起始位置 26. // end() 方法返回整个匹配的结束位置 27. // group() 方法返回匹配的内容, 1. System.out.println("在目标字符串的 " + m.start() + " 到 " + m.end() + " 位置找到了 " + m.group()); 2. 3.
6、 // start(int group) 方法返回第group个捕获型括号匹配的起始位置 4. // end(int group) 方法返回第group个捕获型括号匹配的结束位置 5. // group(int group) 方法返回第group个捕获型括号匹配的内容 6. // groupCount() 返回捕获型括号的数目 7. System.out.println("在目标字符串的 " + m.start(1) + " 到 " + m.end(1) + " 位置找到了电话号码的区号
7、 " + m.group(1)); 8. System.out.println("在目标字符串的 " + m.start(2) + " 到 " + m.end(2) + " 位置找到了电话号码 " + m.group(2)); 9. 10. } else { 11. System.out.println("没有找到匹配的电话号码。"); 12. } 13. 14. 15. // pattern() 方法返回当前 Matcher 使用的正
8、则表达式 16. // usePattern 方法用来更改和当前 Matcher 匹配的正则表达式 17. m.usePattern(Pattern.compile("\w+@[.\w]+")); // 用来匹配邮件地址 18. 19. 20. // reset(CharSequence input) 方法用来更改和当前
此文档下载收益归作者所有