正则表达式:符合一定规则的表达式
作用:用于专门操作字符串
特点:用一些符号代表一些代码
好处:简化对字符串的复杂操作
弊端:当符号书写过多时,阅读性较差
匹配//判断字符串对错
String 类型通过matches方法根据正则表达式检验
如检验5到15位只能用0开头的数字的正则表达式:String regex = "[1-9][0-9]{4,14}";
预定义词:
/d 数字
/D 非数字
/w [0-9][a-z][A-Z]...
Greedy数量词:
X? x出现一次或零次
X* x出现零次或多次
X+ x出现一次或多次
X{n} X恰好出现n次
X{n,m} X出现n到m次,若不写m则 x>=n
切割//按自定方式将字符串变成多个子串
//为了让规则的结果被重用,可将规则封装成一个组
//用()完成,组有编号,\n获取
//用()完成,组有编号,\n获取
替换//将已有的字符串变成另一个字符串
//$n表示取出上一个正则表达式中的组n
获取//拿到符合需求的字符串子串
获取流程:
//将规则封装成对对象
Pattern pattern = Pattern.compile(reg);
Pattern pattern = Pattern.compile(reg);
//让正则对象和要作用的字符串相关联
Matcher matcher = pattern.matcher(str);
Matcher matcher = pattern.matcher(str);
while(matcher.find())//将规则作用到字符串上,进行查找
{
System.out.println(matcher.group());//用于获取匹配后的结果
System.out.println(matcher.start()+"...."+matcher.end());
}
{
System.out.println(matcher.group());//用于获取匹配后的结果
System.out.println(matcher.start()+"...."+matcher.end());
}