이것을 확인하십시오 ...
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+", "")));
}
String에 공백이 하나만 있으면 replace ()는 대체되지 않습니다.
공백이 둘 이상이면 replace () 조치가 공백을 수행하고 제거합니다.
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;
}
Pattern .quote ( "?")는 리터럴 패턴 문자열을 리턴합니다.