* A:正则表达式的获取功能
* Pattern和Matcher的结合使用
* B:案例演示
* 需求:把一个字符串中的手机号码获取出来
案例:
- package com.heima.regex;
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
- public class Demo8_Pattern {
- public static void main(String[] args) {
- //demo1();
- //demo2();
- demo3();
- }
- //匹配查找邮箱
- private static void demo3() {//[1][\\d&&[012678]][\\d]{9}
- String s = "我的邮箱是smhjx2006@163.com,我曾经用过hmsykt2015@sina.com.cn,我还用过hmsykt0902@qq.com";
- //String regex = "[a-zA-Z0-9_]+@[a-zA-Z0-9]+(\\.[a-zA-Z]+)+";//较为精确的匹配。
- String regex = "\\w+@\\w+(\\.\\w+)+";
- Pattern p = Pattern.compile(regex);
- Matcher matcher = p.matcher(s);
- while(matcher.find()){
- System.out.println(matcher.group());
- }
- }
- //匹配查找手机号
- private static void demo2() {
- String s = "我的手机是18511866260,我曾用过18987654321,还用过18812345678";
- String regex = "1[3578]\\d{9}";
-
-
- Pattern p = Pattern.compile(regex);
- Matcher m = p.matcher(s);
-
- /*boolean b1 = m.find();
- System.out.println(b1);
- System.out.println(m.group());
-
- boolean b2 = m.find();
- System.out.println(b2);
- System.out.println(m.group());*/
-
- while(m.find())
- System.out.println(m.group());
- }
- }
复制代码
|
|