-
정규식 "(? 숫자(?!\\d) "는 지정된 숫자와 일치합니다.
-
replaceAll() 메서드는 정규식 패턴과 대체 문자열의 두 문자열을 허용하고 패턴을 지정된 문자열로 바꿉니다.
-
따라서 문자열에서 1과 2를 제외한 모든 숫자를 제거하려면 정규식 1과 2를 각각 1과 2로 바꾸고 나머지 모든 숫자는 빈 문자열로 바꿉니다.
예
import java.util.Scanner; public class RegexExample { 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 the digit 1 String regex1 = "(?<!\\d)1(?!\\d)"; //Regular expression to match the digit 2 String regex2 = "(?<!\\d)2(?!\\d)"; //Replacing all space characters with single space String result = input.replaceAll(regex1, "one") .replaceAll(regex2, "two") .replaceAll("\\s*\\d+", ""); System.out.print("Result: "+result); } }
출력
Enter a String sample 1 2 3 4 5 6 Result: sample one two