正则表达式作为被广泛运用的编程中处理匹配字符串的工具,在各种语言中都有所封装,java同样不例外,JDK1.4以上java开始实装正则表达式。在我们的几个Lab中都有着多处的运用,下面我将做一些总结:
一.首先说明一下具体调用的方法
Pattern类用来输入用来匹配的正则表达式,Matcher类用来使用Pattern去匹配目标串
while (Matcher.find())可以遍历所有找到的解
二.关于正则表达式
1.符号总结
2.数量词
3.边界符号
4.[]相关
三.切割与替换
1.利用group提取括号内容
public static void splitDemo()
{
String str = "erkktyqqquizzzzzo";
String reg ="(.)\\1+";//按照叠词来进行切割
//可以将规则封装成一个组。用()完成。组的出现都有编号。
//从1开始。 想要使用已有的组可以通过 \n(n就是组的编号)的形式来获取。
String[] arr = str.split(reg);
System.out.println(arr.length);
for(String s : arr)
{
System.out.println(s);
}
}
2.替换
public static void replaceAllDemo()
{
String str1 = "erkktyqqquizzzzzo";//将叠词替换成$. //将重叠的字符替换成单个字母。zzzz->z
str = str.replaceAll("(.)\\1+","$1");
System.out.println(str);
}
// erktyquizo