[php] 그룹화와 하위 표현식

이번에는 정규 표현식에서 그룹화와 하위 표현식에 대해 알아보겠습니다.

1. 그룹화

그룹화는 정규 표현식에서 하나 이상의 패턴을 하나의 단위로 묶는 것입니다. 그룹화는 소괄호를 사용하여 표현하며, 그룹 내에서 사용된 패턴은 하나의 단위로 취급됩니다. 이렇게 그룹화된 패턴은 후방 참조나 양식 교체 등에서 활용될 수 있습니다.

예를 들어, (\w+)\s(\w+)는 두 개의 그룹을 가지고 있는데, 첫 번째 그룹은 단어 문자 중 하나 이상이고, 그 뒤에 공백이 오고, 두 번째 그룹은 다시 단어 문자 중 하나 이상을 나타냅니다.

2. 하위 표현식

하위 표현식은 정규 표현식 패턴 내에서 다시 별도의 패턴을 정의하고자 할 때 사용됩니다. 이를 통해 패턴을 더 세부적으로 표현하거나, 반복되는 패턴을 간결하게 표현할 수 있습니다.

예를 들어, \b(https?|ftp)://[-A-Z0-9+&@#/%?=~_|!:,.;]*[-A-Z0-9+&@#/%=~_|]에서 (https?|ftp)는 하위 표현식으로, http 또는 https 또는 ftp를 패턴으로 가지게 됩니다.

결론

그룹화와 하위 표현식은 정규 표현식을 더 유연하게 활용할 수 있도록 도와줍니다. 이를 통해 원하는 패턴을 더 세밀하게 나타내거나, 패턴의 재사용성을 높일 수 있습니다.

위에 예시들은 간단한 예제로, 실제 사용 시에는 더 다양하고 복잡한 패턴을 다룰 수 있습니다.

더 많은 정보를 원하시면 Python의 re 모듈 문서를 참고하세요.