Pattern 클래스의 COMMENTS 필드는 패턴에 공백과 주석을 허용합니다. 이것을 compile() 메서드에 대한 플래그 값으로 사용하면 주어진 패턴에서 공백과 #로 시작하는 주석이 무시됩니다.
예시 1
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class COMMENTES_Example { public static void main( String args[] ) { Scanner sc = new Scanner(System.in); System.out.println("Enter input data: "); String input = sc.nextLine(); //Regular expression to find digits String regex = "\\d #ignore this comment\n"; //Compiling the regular expression Pattern pattern = Pattern.compile(regex, Pattern.COMMENTS); //Retrieving the matcher object Matcher matcher = pattern.matcher(input); int count = 0; String result = ""; while (matcher.find()) { count++; result = result+matcher.group(); } System.out.println("Number of digits in the given text: "+count); } }
출력
Enter input data: sample1 text2 with3 numbers4 in5 between6 Number of digits in the given text: 6
예시 2
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class COMMENTES_Example { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter your name: "); String name = sc.nextLine(); System.out.println("Enter your Date of birth: "); String dob = sc.nextLine(); //Regular expression to accept date in MM-DD-YYY format String regex = "^(1[0-2]|0[1-9])/ # For Month\n" + "(3[01]|[12][0-9]|0[1-9])/ # For Date\n" + "[0-9]{4}$ # For Year"; //Creating a Pattern object Pattern pattern = Pattern.compile(regex, Pattern.COMMENTS); //Creating a Matcher object Matcher matcher = pattern.matcher(dob); boolean result = matcher.matches(); if(result) { System.out.println("Given date of birth is valid"); } else { System.out.println("Given date of birth is not valid"); } } }
출력
Enter your name: Krishna Enter your Date of birth: 09/26/1989 Given date of birth is valid