메타 문자 “\\” 공백과 일치하고 +는 공백이 한 번 이상 발생함을 나타내므로 정규식 \\S+는 모든 공백 문자(단일 또는 다중)와 일치합니다. 따라서 여러 공백을 하나의 공백으로 대체합니다.
입력 문자열을 위의 정규식과 일치시키고 결과를 단일 공백 " "으로 바꿉니다.
예시 1
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class ReplaceAllExample { public static void main(String args[]) { //Reading String from user System.out.println("Enter a String"); Scanner sc = new Scanner(System.in); String input = sc.nextLine(); String regex = "\\s+"; //Compiling the regular expression Pattern pattern = Pattern.compile(regex); //Retrieving the matcher object Matcher matcher = pattern.matcher(input); //Replacing all space characters with single space String result = matcher.replaceAll(" "); System.out.print("Text after removing unwanted spaces: \n"+result); } }
출력
Enter a String hello this is a sample text with irregular spaces Text after removing unwanted spaces: hello this is a sample text with irregular spaces
예시 2
import java.util.Scanner; public class Test { public static void main(String args[]) { //Reading String from user System.out.println("Enter a String"); Scanner sc = new Scanner(System.in); String input = sc.nextLine(); //Regular expression to match space(s) String regex = "\\s+"; //Replacing the pattern with single space String result = input.replaceAll(regex, " "); System.out.print("Text after removing unwanted spaces: \n"+result); } }
출력
Enter a String hello this is a sample text with irregular spaces Text after removing unwanted spaces: hello this is a sample text with irregular spaces