정규표현식(Regular Expression)
정규표현식이란 문자열을 검색하고 대체하는 데 사용 가능한 일종의 형식 언어(패턴)입니다.
정규표현식은 크게 다음과 같은 역할을 수행합니다
1. 문자 검색(search)
2. 문자 대체(replace)
3. 문자 추출(extract)
정규표현식 테스트 사이트
JS 정규식 생성
1. 생성자 함수 방식
RegExp 생성자 함수를 호출하여 사용할 수 있습니다.
2. 리터럴(Literal) 방식
정규표현식은 / 로 감싸진 패턴을 리터럴로 사요합니다.
JS 정규식 메소드
메소드 | 의미 |
정규식.exec(문자열) | 일치하는 하나의 정보(array) 반환 |
정규식.test(문자열) | 일치 여부(boolean) 반환 |
문자열.match(정규식) | 일치하는 문자열의 배열(array) 반환 |
문자열.search(정규식) | 일치하는 문자열의 index(number) 반환 |
문자열.replace(정규식, 대체문자) | 일치하는 문자열을 대체하고 대체된 문자열(string) 반환 |
문자열.split(정규식) | 일치하는 문자열을 분활하여 배열(array)로 반환 |
생성자_정규식.toString() | 생성자 함수 방식의 정규식을 리터럴 방식의 문자열(string)로 반환 |
JS 정규식 플래그(옵션)
플래그 | 설명 |
g | 모든 문자 일치(global) |
i | 영어 대소문자를 구분 않고 일치(ignore) |
m | 여러 줄 일치(multi line) |
JS 정규식 패턴(표현)
패턴 | 설명 |
^ab | 줄(line) 시작에 있는 ab와 일치 |
ab$ | 줄(line) 끝에 있는 ab와 일치 |
. | 임의의 한 문자와 일치 |
a|b | a 또는 b와 일치 |
ab? | b가 없거나 b와 일치 |
{3} | 3개 연속 일치 |
{3,} | 3개 이상 연속 일치 |
{3,5} | 3개 이상 5개 이하(3~5개) 연속 일치 |
[abc] | a 또는 b 또는 c |
[a-z] | a부터 z사이의 문자 구간에 일치(영어 소문자) |
[A-Z] | A부터 Z사이의 문자 구간에 일치(영어 대문자) |
[0-9] | 0부터 9사이의 문자 구간에 일치(숫자) |
[가-힣] | 가부터 힣사이의 문자 구간에 일치(한글) |
\w | 63개 문자(Word, 대소영문52개 + 숫자10개 + _)에 일치 |
\b | 63개 문자에 일치하지 않는 문자 경계(oundary) |
\d | 숫자(Digit)에 일치 |
\s | 공백(Space, Tab등)에 일치 |
(?=) | 앞쪽 일치(Lookahead) |
(?<=) | 뒤쪽 일치(Lookbehind) |
더 많은 내용은 HEROPY Tech 블로그를 참고하셔도 좋습니다.
'프론트엔드 > JS' 카테고리의 다른 글
JS Level Up(2) - 데이터 실습 (0) | 2023.08.18 |
---|---|
JS Level Up(1) - 데이터 (0) | 2023.08.18 |
JS 클래스 (0) | 2023.08.16 |
JS 함수 (0) | 2023.08.16 |
JS 시작하기(4) - 변수 유효범위 및 형 변환 (0) | 2023.08.15 |