import java.util.Scanner;
public class redigetajs {
public static void main(String args[]){
Scanner scan= new Scanner(System.in);
System.out.println("Input text!");
String teksts= scan.nextLine();
System.out.println("text after change!");
System.out.println(teksts.replaceAll("(.)\\1{1,}", "$1"));
}
}
这段代码中每个元素的作用
("(.)\\1{1,}", "$1")
是什么?
它匹配相同字符的序列并将它们折叠成仅出现一次。
示例:
"aaaaabcccdd"
-> "abcd"
Suexpression 复制组字符并删除:
(.)
- 组,也称为 $1
\\1
- 子表达式紧随其后{1,}
- 重复一次或多次