문자 클래스
Flash Player 9 이상, Adobe AIR 1.0 이상
문자 클래스를 사용하면 일반 표현식에서 한 위치에 대응되는 문자 목록을 지정할 수 있습니다. 문자 클래스를 정의할 때는 대괄호([ 및 ])를 사용합니다. 예를 들어, 다음 일반 표현식은 bag, beg, big, bog 또는 bug와 일치하는 문자 클래스를 정의합니다.
/b[aeiou]g/
문자 클래스의 이스케이프 시퀀스
대개 일반 표현식에서 특별한 의미를 갖는 메타문자와 메타시퀀스의 대부분은 문자 클래스 내에서는 같은 의미를 갖지 않습니다. 예를 들어, 별표는 일반 표현식에서 반복을 나타내는 데 사용되지만 문자 클래스에 나타날 때는 그렇지 않습니다. 다음 문자 클래스는 나열된 다른 모든 문자와 함께 별표를 문자 그대로 찾습니다.
/[abc*123]/
그러나 다음 표에 나열된 세 단어는 메타문자로 사용되어 문자 클래스에서도 특별한 의미를 갖습니다.
메타문자
|
문자 클래스에 사용할 경우 의미
|
]
|
문자 클래스의 끝을 정의합니다.
|
-
|
문자 범위를 정의합니다("문자 클래스의 문자 범위" 참조).
|
\
|
메타시퀀스를 정의하고 메타문자의 특별한 의미를 제거합니다.
|
이러한 문자가 특별한 메타문자 의미를 갖지 않고 리터럴 문자로 인식되게 하려면 해당 문자 앞에 백슬래시 이스케이프 문자를 추가해야 합니다. 예를 들어, 다음 일반 표현식에는 네 가지 심볼($, \, ] 또는 -) 중 하나와 일치하는 문자 클래스가 포함되어 있습니다.
/[$\\\]\-]/
특별한 의미를 유지하는 메타문자뿐만 아니라 다음 메타시퀀스도 문자 클래스 내에서 특별한 의미를 갖는 메타시퀀스로 사용됩니다.
메타시퀀스
|
문자 클래스에 사용할 경우 의미
|
\n
|
개행 문자를 찾습니다.
|
\r
|
캐리지 리턴 문자를 찾습니다.
|
\t
|
탭 문자를 찾습니다.
|
\unnnn
|
16진수 nnnn으로 정의된 유니코드 값을 사용하는 문자를 찾습니다.
|
\\xnn
|
16진수 nn으로 정의된 ASCII 값을 사용하는 문자를 찾습니다.
|
다른 일반 표현식 메타시퀀스 및 메타문자는 문자 클래스 내에서 일반 문자로 처리됩니다.
문자 클래스의 문자 범위
하이픈을 사용하면 A-Z, a-z 또는 0-9와 같이 문자 범위를 지정할 수 있습니다. 이러한 문자는 문자 세트에서 유효한 범위를 구성해야 합니다. 예를 들어, 다음 문자 클래스는 a-z 범위의 문자 중 하나 또는 임의의 숫자를 찾습니다.
/[a-z0-9]/
\\xnn ASCII 문자 코드를 사용하여 ASCII 값으로 범위를 지정할 수도 있습니다. 예를 들어, 다음 문자 클래스는 확장 ASCII 문자(예: é 및 ê) 세트의 문자를 찾습니다.
\\x
문자 클래스 부정
캐럿(^) 문자를 문자 클래스의 맨 앞에 사용하면 해당 클래스를 제외하고 나열되지 않은 모든 문자를 찾습니다. 다음 문자 클래스는 소문자(a–z) 또는 숫자 이외의 모든 문자를 찾습니다.
/[^a-z0-9]/
부정을 나타내려면 캐럿(^) 문자를 문자 클래스의 맨 앞에 입력해야 합니다. 그렇지 않으면 캐럿 문자가 문자 클래스의 문자에 추가됩니다. 예를 들어, 다음 문자 클래스는 캐럿을 포함하여 많은 심볼 문자 중 하나를 찾습니다.
/[!.,#+*%$&^]/