문자 클래스

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]/

부정을 나타내려면 캐럿(^) 문자를 문자 클래스의 맨 앞에 입력해야 합니다. 그렇지 않으면 캐럿 문자가 문자 클래스의 문자에 추가됩니다. 예를 들어, 다음 문자 클래스는 캐럿을 포함하여 많은 심볼 문자 중 하나를 찾습니다.

/[!.,#+*%$&^]/