• 회원가입
  • 로그인

[regex] PHP 정규표현식 패턴 8강 - [ - ] (대괄호 안 하이픈) ─ 매치되는 문자의 후보 범위




 


 패턴 8 - [ - ]  (대괄혼 안 하이픈) : 매치되는 문자의 후보 범위

여러 개의 범위가 올 수 있습니다. (Case 5 참고)

Source

ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789

Case 1  -  대문자 C ~ K 중 하나에 해당하는 1글자로 된 모든 문자 찾기

Regular Expression: [C-K]
First match: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789
All matches: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789

Case 2  -  Case 1과 같은 의미

Regular Expression: [CDEFGHIJK]
First match: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789
All matches: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789

Case 3  -  소문자 a ~ d중 하나에 해당하는 1글자로 된 모든 문자 찾기

Regular Expression: [a-d]
First match: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789
All matches: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 01234567894

Case 4  -  숫자 2 ~ 6 중 하나에 해당하는 1글자로 된 모든 숫자 찾기

Regular Expression: [2-6]
First match: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789
All matches: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789

Case 5  -  대문자 C ~ K  , 소문자 a ~ d ,  숫자 2 ~ 6 중 하나에 해당하는 문자

Regular Expression: [C-Ka-d2-6]
First match: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789
All matches: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789

 

 

PHP7.3 이슈 - 하이픈(-) 앞에 역슬래시 (\) 추가 필요

 

수정 전: preg_match('/[\w-.]+/', ''); // PHP7.3 작동 X

수정 후: preg_match('/[\w\-.]+/', ''); // 하이픈 이스케이프 처리

 

https://stackoverflow.com/questions/24764212

 

방문 감사합니다. (즐겨찾기 등록: Ctrl + D)

찾아주셔서 감사합니다. Since 2012