Перевір це...
public static void main(String[] args) {
String s = "A B C D E F G\tH I\rJ\nK\tL";
System.out.println("Current : "+s);
System.out.println("Single Space : "+singleSpace(s));
System.out.println("Space count : "+spaceCount(s));
System.out.format("Replace all = %s", s.replaceAll("\\s+", ""));
// Example where it uses the most.
String s = "My name is yashwanth . M";
String s2 = "My nameis yashwanth.M";
System.out.println("Normal : "+s.equals(s2));
System.out.println("Replace : "+s.replaceAll("\\s+", "").equals(s2.replaceAll("\\s+", "")));
}
Якщо рядок містить лише один пробіл, тоді заміна () не замінить,
Якщо пробілів більше, ніж один, тоді операція заміни () виконує та видаляє пробіл.
public static String singleSpace(String str){
return str.replaceAll(" +| +|\t|\r|\n","");
}
Для підрахунку кількості пробілів у рядку.
public static String spaceCount(String str){
int i = 0;
while(str.indexOf(" ") > -1){
//str = str.replaceFirst(" ", ""+(i++));
str = str.replaceFirst(Pattern.quote(" "), ""+(i++));
}
return str;
}
Шаблон .quote ("?") Повертає буквальний рядок шаблону.