정규식을 구성하는 동안 발생 횟수를 지정하려면 수량자를 사용할 수 있습니다. 다음 표는 Java 정규식에서 지원하는 수량자를 나열합니다. -
| 한정자 | 설명 | 예 |
|---|---|---|
| 재* | 0개 이상의 발생. | [0-9]*:0개 이상의 숫자와 일치합니다. |
| 또? | 하나 또는 전혀 발생하지 않습니다. | [0-9]?:0 또는 1자리와 일치합니다. |
| 재+ | 하나 이상의 발생. | [0-9]+:하나 이상의 숫자와 일치합니다. |
| 재{n} | n회 발생. | [0-9]{3}:3자리 숫자와 일치합니다. |
| 다시{n, } | 최소 n회 발생. | [0-9]{3, }:최소 3자리 숫자와 일치합니다. |
| 다시{n, m} | 최소 n회 및 최대 m회 발생. | [0-9]{2, 5}:주어진 입력이 3~5자리 숫자인 경우 일치합니다. |
예
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main( String args[] ) {
String regex = "[0-9]{3,6}";
Scanner sc = new Scanner(System.in);
System.out.println("Enter 5 input strings: ");
String input[] = new String[5];
for (int i=0; i<5; i++) {
input[i] = sc.nextLine();
}
//Creating a Pattern object
Pattern p = Pattern.compile(regex);
System.out.println("Matched values: ");
for(int i=0; i<5;i++) {
//Creating a Matcher object
Matcher m = p.matcher(input[i]);
if(m.matches()) {
System.out.println(m.group()+": accepted ");
}
}
}
} 출력
Enter 5 input strings: 12 154 4587 478365 4578952 Matched values: 154: accepted 4587: accepted 478365: accepted