Java的正则表达式,主要java.util.regex这个包,一些博客介绍的已经有非常详细,末尾附参考,本文目的简要总结下Java正则表达式的使用套路,注:本文不注重正则表达式本身的写法技巧:
1.JDK版本1.7, java.util.regex包下文件,主要使用Pattern和Matcher两个类,其他可以自己看
2.主要套路,Pattern负责编译正则表达式,Matcher负责对输入字符串匹配,上代码:
String regx = "d{6}";//自己编写的正则表达式
String inputContext = "121343sfca";//要匹配的输入字符串
Pattern pattern = Pattern.compile(regx); //负责编译正则表达式
Matcher matcher = pattern.matcher(inputContext);//匹配字符串
3.得到了Matcher实例matcher后,就可以用Matcher提供的方法来按照不同需求匹配,有三种方法,详解注释:
matcher.matches();//该方法表示,正则表达式 和 输入字符串 完全匹配
matcher.reset();//同一个matcher,用不同的方法匹配时,要先reset(),否则对后续匹配方法有影响
matcher.find();//能够匹配输入字符串任何位置,即只要有子字符串满足模式也能匹配成功
matcher.reset();
matcher.lookingAt();//从开始的位置匹配,包括子字符串
4.匹配成功的情况下,可以用matcher的方法,start(),end(),group()等等方法,具体的可以实践;
5.总结,先: Pattern构造编译正则表达式,然后: Matcher输入待匹配内容,最后: 结合不同需求进行匹配,重点区分三种匹配方法的不同;
6.补充:String内部使用了正则表达式的方法如下:
matches(regex);
replaceFirst(regex, replacement);
replace(oldChar, newChar);
replaceAll(regex, replacement);
split(regex);