php

정규 표현식

hojomu 2023. 9. 13. 08:32

php 에서 사용하는 정규식에 대해 간단한게 정리

 

/lst/	-> 문자 lst와 일치
/[abcd]/	-> 대괄호 내부 문자중 하나 일치 (여기서는 a,b,c,d 중 하나)
/[K-Z]/		-> 대괄호 안의 하이픈(-)은 일치시킬 문자의 범위 (K ~ Z 사이의 대문자)
/[a-e]/		-> a 부터 e 사이의 모든 소문자 일치
/[0-9]/		-> 0 부터 9 사이의 모든 숫자와 일치
/[A-z0-9]/	-> A 부터 Z 사이의 모든 대소문자 또는 0 부터 9 사이의 모든 숫자와 일치
/^[A-Z]/	-> 패턴의 시작 부분에 있는 캐럿(^)은 이러한 문자로 시작해야 한다는 것을 지정
			(첫 번째 문자가 A~Z 로 시작해야함)
/lst\!$/	-> 패턴 끝에 있는 달러($) 는 문자열이 지정된 문자로 끝나야함
			(문자열의 마지막이 lst! 일때 일치)
/\s/		-> 공백과 일치

\ / . | $ ( ) ^ ? { } + * 문자는 정규 표현식에서 특별한 의미를 갖는다. 이러한 문자로 패턴을 만들려면 문자앞에 백슬래시 \

/[\!\?\(\)]/	-> 느낌표, 물음표, 또는 괄호와 일치

한정자(quantifier) 를 추가하면 문자열에 패턴이 표시되어야 하는 횟수를 지정할 수 있다.

/[a-z]+/	-> 더하기 기호는 지정된 문자 중 하나 이상을 나타낸다
/[a-z]{3}/	-> 중괄호 안의 숫자는 패턴이 정확히 그 숫자만큼 나와야 한다는 것을 나타낸다
/[A-z]{3,5}/	-> 중괄호 안의 콤마로 구분된 두 개의 숫자는 패턴이 나와야하는 최소, 최대 횟수
/[a-z]{3,}/		-> 중괄호 안의 숫자 한개와 콤마가 나타나면 최대 / 최소 횟수

일련의 패턴을 찾으려면 하나의 패턴 다음에 다른 패턴을 사용한다

/[0-9][a-z]/	-> 숫자 0-9 다음에 소문자 a-z 와 일치

표현식의 일부를 괄호로 묶으면 그룹이 된다. 그룹 다음에 한정자를 추가하면 나타나야 하는 횟수를 뜻함

/[0-9]([a-z]{2})/	-> 0-9 와 일치한 다음 a-z 와 일치하는 문자 2개 일치
/[1-31](st|nd|rd|th)/	-> 1~31 과 일치한 다음 st nd rd th 중 하나 일치