본문 바로가기
Javascript

JS Regular Expressions

by SeanK 2021. 10. 26.

 

 

오늘은 Regular Expressions에 대해 알아보자. 

 

 

Regular Expressions란?

 

regular expression (shortened as regex or regexp; also referred to as rational expression) is a sequence of characters that specifies a search pattern. Usually such patterns are used by string-searching algorithms for "find" or "find and replace" operations on strings, or for input validation. It is a technique developed in theoretical computer science and formal language theory.

 

RE를 요약해서 설명하자면, 문자의 특정패턴을 지칭하는 표현식을 말한다. 

RE를 이용하면 대량의 문자열중에서 원하는 패턴의 문자들만을 이용할 수 있게 된다.

 

 

RE 생성방법

 

방법1: 슬래쉬

let re = /ab+c/;

방법2: 생성자

let re = new RegExp('ab+c');

 

 

RE 기호

 

*

: *앞의 기호와 *뒤의 기호사이에 0혹은 이상의 문자들이 있다. 

 

^

: ^뒤의 기호가 맨처음에 위치한다. 

 

$

: $앞의 기호가 맨뒤에 위치한다. 

 

\b

: \b앞의 기호는 맨첨음에 위치해야 하며 \b뒤의 기호는 맨뒤에 위치한다. 

 

\B

: \B앞의 기호와 같은 문자열 혹은 공백 혹은 \B뒤의 기호와 같은 문자열 혹은 공백 

For example, /\Bon/ matches "on" in "at noon", and /ye\B/ matches "ye" in "possibly yesterday".

 

x(?=y)

: x와 같으면서 y의 앞에 있는 문자열 

 

x(?!y)

: x와 같으면서 y의 앞에 있지 않는 문자열

 

(?<=y)x

: x와 같으면서 y의 뒤에 있는 문자열

 

(?<!y)x

: x와 같으면서 y의 뒤에 있지 않는 문자열 

 

.

: .뒤의 문자와 문자앞의 문자 선택 

 

\d

: 숫자 선택

 

\D

: 숫자가 아닌 것 선택

 

\w

: 알파벳과 숫자 선택. [A-Za-z0-9_]과 동일

 

\W

: 알파벳과 숫자가 아닌 것 선택. [^A-Za-z0-9_]과 동일

 

\s

: 공백 선택

 

\S

: 공백이 없음

 

x|y

: x혹은 y

 

x{n}

: x문자 n회 선택. /a{2} 는 'candy'를 선택하지 않지만 'caandy'와 'caaandy'의 처음 a 두개 선택

 

x{n, }

: x문자를 적어도 n회 선택. /a{2} 는 'candy'를 선택하지 않지만 'caandy'와 'caaandy'의 a 모두 선택

 

 

'Javascript' 카테고리의 다른 글

JS Import  (0) 2021.11.01
JS Async vs Defer  (0) 2021.10.27
JS 심화개념 - MapReduce, Currying, Function composition, Declarative Programming  (0) 2021.10.25
JS Shallow Copy  (0) 2021.10.25
JS 내장 고차함수  (0) 2021.10.24