Java 正则表达式

Java 正则表达式

java.util.regex.Pattern java.util.regex.Matcher

Match

match 是从字符串最头部开始匹配,一直到结束,需要匹配整个串

String content = "Welcome, bob!"; content.match("bob");    //false content.match(".*bob")   //false content.match(".*bob.*") //true   String str="test@yahoo.com.cn"; Pattern pattern = Pattern.compile("[\w\.\-]+@([\w\-]+\.)+[\w\-]+",Pattern.CASE_INSENSITIVE); Matcher matcher = pattern.matcher(str); boolean a = matcher.matches(); //匹配的时候返回true

Find

boolean b = matcher.find(); //包含正则匹配的串为true // 找到所有匹配的串 while(matcher.find()) {     String extracted = matcher.group(0) } 

Replace

matcher.replaceFirst("") matcher.replaceAll("");

Group

group(0) 代表整个表达式

String line = "#星座运势#20171013"; String pattern = "\#(\p{L}*)\#(\d+)";  //p{L}  匹配 unicode any kind of letter from any language // 创建 Pattern 对象 Pattern r = Pattern.compile(pattern);   // 现在创建 matcher 对象 Matcher m = r.matcher(line);  if (m.find( )) {    System.out.println("Found value: " + m.group(0) );    // "#星座运势#20171013"    System.out.println("Found value: " + m.group(1) );    // 星座运势    System.out.println("Found value: " + m.group(2) );    // 20171013 } else {    System.out.println("NO MATCH"); }

参考资料

脚本宝典为你提供优质服务
脚本宝典 » Java 正则表达式

发表评论

提供最优质的资源集合

立即查看 了解详情