반응형
정규표현식 정의 (Regular Expression)
특정한 규칙을 가진 문자열의 집합을 표현하는데 사용하는 언어로 코드가 간결해지는 장점을 가지고 있지만 가독성이 떨어진다.
정규표현식 형식
/패턴/플래그
- 슬래시(/) 사이에는 매칭시킬 패턴을 써준다.
- 슬래시(/) 다음에는 옵션을 설정하는 플래그를 써준다.
- (플래그는 하나만 찾을지 여러 개를 찾을지 등을 설정하는 옵션)
정규표현식 매칭 패턴 (문자, 숫자, 기호 등)
패턴 | 의미 |
a-zA-z | 모든 영어 |
ㄱ-ㅎ가-힣 | 모든 한글 |
0-9 | 모든 숫자 |
. | 모든 문자열 (숫자, 한글, 영어, 특수기호, 공백 모두) |
\d | 숫자 |
\D | 숫자 제외 모든 문자 |
\w | 영어 |
\W | 영어 제외 모든 문자 |
\s | 공백 |
\S | 공백을 제외한 모든 문자 |
정규표현식 검색 패턴
기호 | 의미 |
| | OR |
[ ] | 괄호안의 모든 문자들 중 하나 |
[^문자] | 괄호안의 문자를 제외한 것 |
^문자열 | 특정 문자열로 시작 |
문자열$ | 특정 문자열로 끝남 |
( ) | 그룹 검색 및 분류 |
(?: 패턴) | 그룹 검색 (분류 X) |
\b | 단어의 처음/끝 |
\B | 단어의 처음/끝이 아님 |
정규표현식 갯수 (수량) 패턴
기호 | 의미 |
? | 최대 한번 |
* | 여러개 포함 |
+ | 최소 한개 |
{n} | n개 |
{Min,} | 최소 Min개 이상 |
{Min, Max} | 최소 Min개 이상, 최대 Max개 이하 |
정규표현식 플래그
플래그 | 의미 |
g | Global: 모든 문자 검색 (안쓰면 매칭되는 첫 문자만 검색) |
i | Ignore Case: 대소문자 구분 안함 |
m | Multi line: 여러 행의 문자열에 대해 검색 |
반응형
'웹 디자인 > JavaScript' 카테고리의 다른 글
Notepad++ 로 자바스크립트 실행해보기 (0) | 2023.06.13 |
---|---|
자바스크립트 변수 선언 키워드 var let const 차이 (0) | 2023.02.11 |
자바스크립트 문자열 공백 제거하는 방법 (trim, replace) (0) | 2022.08.26 |
자바스크립트 문자열 자르는 함수 substr, substring, slice, split (0) | 2022.03.28 |
자바스크립트 window.open() 속성 / 팝업창 열기 (0) | 2022.03.21 |