정규표현식(Regular Expression: Regex)

GunYong·2023년 1월 18일
0

Today I Learned

목록 보기
13/15
post-thumbnail

정규표현식

정규표현식이란 특정 패턴의 문자열을 찾기 위한 표현 방법이다.

정규표현식을 사용하면 특정 패턴의 문자열을 생각보다 쉽게 찾아내고 수정 할 수 있다.

예를 들어 전화번호 010 - 1111 - 222 라는 전화번호는 숫자 3 / 4 / 3 개로 이루어져 있는데 전화번호 검증을 할때 특정 문자열이 전화번호의 패턴과 일치 여부를 체크할 수 있다.

const regex = /\d{3}-\d{4}-\d{4}/;

regex.test('010-1111-2222') // true;
regex.test('01-11-22') // false

정규표현식 간단한 활용

문자열 '가나다라마바사 010-1111-2222 10개 NIce to meet you' 가 있다.

  • /가/ : '가' 를 하나만 찾는다
  • /가/g : '가' 를 모두찾는다
  • /가나다라마바사/ : '가나다라마바사'를 찾는다
  • [가0e] : '가' , '0' , 'e' 중에 하나를 모두 찾는다 => 대괄호 []는 OR기능
  • [0-9]/g : 숫자 0~9 모두 찾는다
  • [a-zA-z]/g : 영어 대소문자 모두를 찾는다
  • [^0~9]/g : 숫자 0~9가 아닌 모든 것을 찾는다

정규표현식 사용법

위와 같이 원하는 상황에 자유자제로 사용하려면 기본적으로 정규표현식을 사용하는 방법을 알아야한다.

1. 정규표현식 형식

/패턴/플래그

- 슬래시(/) "사이"에는 매칭시킬 "패턴"을 써준다.

- 슬래시(/) "다음"에는 옵션을 설정하는 "플래그"를 써준다.

(플래그는 하나만 찾을지, 모두 다 찾을지 등을 설정하는 옵션이라고 보면 됩니다.)

2. 매칭 패턴(문자 / 숫자 / 기호)

3. 검색 패턴

4. 개수,수량 패턴

5. 정규표현식 플래그

6. 주요 메서드

알고리즘 문제를 풀다가 이건 정규표현식으로 나타내야겠다 라는 느낌이 오는 문제가 있다. 정규 표현식을 익혀놓으면 내가 원하는 상황에서 유용하게 사용할 수 있으니 공부를 제대로 해놔야한다.

정규표현식은 자바스크립트에서만 사용하는 것이 아니고 대부분의 프로그래밍 언어에서도 지원되기에 더욱 유용한거같다.

0개의 댓글