java正则表达式四种常用的处理方式(匹配、分割、替代、获取)
java正则表达式高级篇,介绍四种常用的处理方式:匹配、分割、替代、获取,具体内容如下
packagetest;
importjava.util.regex.Matcher;
importjava.util.regex.Pattern;
/**
*正则表达式
*正则表达式的用法主要是4种方面的使用
*匹配,分割,替换,获取.
*用一些简单的符号来代表代码的操作
*@authorcyc
*
*/
publicclassRex{
publicstaticvoidmain(String[]args){
//针对字符串处理
Rexreg=newRex();
//校验qq的reg正则表达式
//这里的\w是指的是[a-zA-Z0-9],还有一个重要的是?,*.+这三个分别
//?表示出现1次或者1次都没有,
//+表示出现1次或者n次,
//*表示出现0次或者n次,
//还有些特殊的写法X{n}恰好n次X{n,}至少n次,X{n,m}n次到m次,
StringmathReg="[1-9]\\d{4,19}";
StringdivisionReg="(.)\\1+";
//\\b是指的边界值
StringgetStringReg="\\b\\w{3}\\b";
//字符串匹配(首位是除0的字符串)
reg.getMatch("739295732",mathReg);
reg.getMatch("039295732",mathReg);
//字符串的替换
//去除叠词
reg.getReplace("12111123ASDASDAAADDD",divisionReg,"$1");
//字符串的分割
//切割叠词,重复的
//这里要知道一个组的概念(.)\\1第二个和第一个至相同
reg.getDivision("aadddddasdasdasaaaaaassssfq",divisionReg);
//字符串的获取
//现在获取三个字符串取出
reg.getString("mingtianjiuyaofangjiale",getStringReg);
}
/**
*获取查询的字符串
*将匹配的字符串取出
*/
privatevoidgetString(Stringstr,Stringregx){
//1.将正在表达式封装成对象Patten类来实现
Patternpattern=Pattern.compile(regx);
//2.将字符串和正则表达式相关联
Matchermatcher=pattern.matcher(str);
//3.String对象中的matches方法就是通过这个Matcher和pattern来实现的。
System.out.println(matcher.matches());
//查找符合规则的子串
while(matcher.find()){
//获取字符串
System.out.println(matcher.group());
//获取的字符串的首位置和末位置
System.out.println(matcher.start()+"--"+matcher.end());
}
}
/**
*字符串的分割
*/
privatevoidgetDivision(Stringstr,Stringregx){
String[]dataStr=str.split(regx);
for(Strings:dataStr){
System.out.println("正则表达式分割++"+s);
}
}
/**
*字符串的替换
*/
privatevoidgetReplace(Stringstr,Stringregx,StringreplaceStr){
Stringstri=str.replaceAll(regx,replaceStr);
System.out.println("正则表达式替换"+stri);
}
/**
*字符串处理之匹配
*String类中的match方法
*/
publicvoidgetMatch(Stringstr,Stringregx){
System.out.println("正则表达匹配"+str.matches(regx));
}
}
以上就是Java正则表达式的全部内容,希望对大家的学习有所帮助