대부분의 문자와 문자는 단순히 일치합니다. 그러나 메타 문자라고 하는 일부 문자는 서로 일치하지 않습니다. 대신 일부 패턴이 일치해야 함을 나타내거나 정규식의 일부를 반복하거나 변경합니다.
다음은 메타 문자의 전체 목록입니다.
. ^ $ * + ? { } [ ] \ | ( )
먼저 [ 와 ]를 살펴보겠습니다. 일치시키려는 문자 집합인 문자 클래스를 나타내는 데 사용됩니다. 문자를 개별적으로 나열하거나 두 문자를 제공하고 '-'로 구분하여 문자 범위를 나타낼 수 있습니다. 예를 들어, [xyz]는 x, y 또는 z 문자와 일치합니다. 이것은 범위를 사용하여 동일한 문자 집합을 표현하는 [x-z]와 동일합니다. 소문자만 일치시키려면 정규식은 [a-z]가 됩니다.
메타 문자는 클래스 내에서 작동하지 않습니다. 예를 들어, [abc$]는 'a', 'b', 'c' 또는 '$' 문자와 일치합니다. '$'는 메타 문자이지만 문자 클래스 내에서는 특수 문자가 제거됩니다.
클래스의 첫 번째 문자로 '^'가 있으면 이 클래스에 속하지 않는 모든 문자를 의미합니다. 예를 들어, [^8]은 '8'을 제외한 모든 문자와 일치합니다.
아마도 가장 중요한 메타 문자는 백슬래시인 \입니다. 또한 모든 메타 문자를 이스케이프하여 패턴에서 일치시킬 수 있습니다. 예를 들어, ] 또는 \를 일치시켜야 하는 경우 앞에 백슬래시를 사용하여 \] 또는 \\와 같은 특별한 의미를 제거할 수 있습니다.