
오늘은 Regular Expressions에 대해 알아보자.
Regular Expressions란?
A 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 |