学习后对正则表达式使用记录(个人)

来源:互联网 发布:博优化纤 官网 编辑:程序博客网 时间:2024/06/03 23:03
package com.LZX.test;import java.util.regex.Matcher;import java.util.regex.Pattern;public class Tst {public static void main(String[] args) {/** * 反斜杠\为java转义符,故需要\\代替,()为正则使用的符号,故也需要转义,使用\\( 正则中: \d 表达为数字,{3} * 表示匹配3次, \s 表示空格, | 或 , ? 表示个数 0或者1 个, */Pattern pattern = Pattern.compile("((\\(\\d{3}\\)|\\d{3})\\s?\\d{3}-?\\d{4})");String texString = "020237-1212  (020) 237-1212";// (020) 237-1212、020// 237-1212、020237-1212、0202371212;Matcher matcher = pattern.matcher(texString);if (matcher.find()) {System.out.println(matcher.groupCount());for (int i = 0; i < matcher.groupCount(); i++) {System.out.println(matcher.group(i));}} else {System.out.println("not find");}}}       int i = 0;          while(matcher.find()){              i++;          }          System.out.println("find"+i); //通过循环可以统计出现匹配成功次数  每find()一次,则会自减 1