[자바 정규식] Tab, 2회 이상 발생된 Space 를 Space 1개로 변환하기
2025. 5. 13. 18:57ㆍJava/소스 쪼가리
로직 적용 전 :
public class Test {
public static void main(String[] args) {
new Test();
}
Test() {
String letra = """
즐거운 곳에서는 날 오라 하여도
내 쉴 곳은 작은 집 내 집 뿐이리
내 나라 내 기쁨 길이 쉴 곳도
꽃 피고 새 우는 집 내 집 뿐이리
오 사랑 나의 집
즐거운 나의 벗 집 내 집 뿐 이리""";
System.out.println(letra);
}
}
로직 적용 후 :
public class Test {
public static void main(String[] args) {
new Test();
}
Test() {
String letra = """
즐거운 곳에서는 날 오라 하여도
내 쉴 곳은 작은 집 내 집 뿐이리
내 나라 내 기쁨 길이 쉴 곳도
꽃 피고 새 우는 집 내 집 뿐이리
오 사랑 나의 집
즐거운 나의 벗 집 내 집 뿐 이리""";
String output = letra.replaceAll("\t", " ").replaceAll(" {2,}", " ");
System.out.println(output);
}
}
설명:
/**
{발생횟수,} : 발생횟수 뒤에 "," 를 붙여서 ~이상 조건으로 만들어 준다.
-----------
"변환할 문자열".replaceAll(정규식 문자열, " ");
정규식 문자열을 "\t| {2,}" 으로 할 경우, [\t(탭)] 또는 [" " 2회 발생]이 아니며
\t(탭 문자)도 2회 이상 발생한 조건으로 해석되기 때문에 \t(탭 문자)가 한 개만 있는 경우는 무시된다.
따라서
"변환할 문자열".replaceAll("\t", " "); 으로 \t(탭 문자)를 모두 " " 로 변환한 후에
.replaceAll(" {2,}", " "); 읋 다시 적용해서 최종적으로 " " 하나로 줄인다.
*/
'Java > 소스 쪼가리' 카테고리의 다른 글
String 한 줄 주석에서 항목값 걸러내기 (1) | 2025.05.01 |
---|