正则表达式——去除重复字符并替换
//正则表达式-去除重复字符并替换
class RegexTest
{
public static void main(String[] args)
{
//System.out.println("Hello World!");
test_1();
}
/*
需求:
将下列字符串转成:我要学编程.
到底用四种功能中的哪一个呢?或者哪几个呢?
思路方式:
1.如果只想知道该字符是对是错.使用匹配.
2.想要将已有的字符串竟成另一个字符串,替换.
3,想要按照自定的方式将字符串变成多个字符串. 切割.获取规则以外的子串
4,想要拿到符合需求的字符串子串, 获取.获取符合规则的子串
*/
public static void test_1()
{
String str = "我我...我我...我要..要要...要要...学学学....学学...编编编..编程..程.程程...程...程"
/*
将已有字符串变成另一个字符串.使用替换功能.
1,可以先将 . 去掉
2,再将多个重复的内容变成单个内容.
*/
str = str.replaceAll("\.+","");// \转义. ,+ 1次或更多
//replaceAll(String replacement)
//替换模式与给定替换字符串相匹配的输入序列的每个子序列。
//String replaceAll()方法,参数(String regex,String replacement)
System.out.println(str);
str = str.replaceAll("(.)\1+","$1");//(.)任意字字符成组,\1捕获1次;叠词,$1得到1组, 取前面的组1次或多次
}
}