정규표현식

Steve·2021년 4월 22일
0

/ /gm
g: global 매칭되는 다수의 결과값을 기억
m: multiline: 여러줄에서 전체 적용
안써주면 전체문장에서 찾게됨
Ya$
^Ya

const regex = /(?:https?:\/\/)?(?:www\.)?youtu\.be\/([a-zA-Z0-9-]{11})/;
const url = 'https://www.youtu.be/-ZClicWm0zM';
url.match(regex);

문법 정리

Groups and ranges

Chracter
\|또는
()그룹
[]문자셋, 괄호안의 어떤 문자든
[^]부정 문자셋, 괄호안의 어떤 문가 아닐때
(?:)찾지만 기억하지는 않음

{
(e|a) 그룹
(?: e|a) 그룹 아님
gr[aed]y
gr[a-f]y
[a-zA-Z0-9][^a-zA-Z0-9]//위를 제외한 나머지
}

=======================================================================================

Quantifiers

Chracter
?없거나 있거나 (zero or one)
*없거나 있거나 많거나 (zero or more)
+하나 또는 많이 (one or more)
{n}n번 반복
{min,}최소
{min,max}최소, 그리고 최대

=======================================================================================

Boundary-type

Chracter
\b단어 경계
\B단어 경계가 아님
^문장의 시작
$문장의 끝

=======================================================================================

Character classes

Chracter
\특수 문자가 아닌 문자
.어떤 글자 (줄바꿈 문자 제외)
\ddigit 숫자
\Ddigit 숫자 아님
\wword 문자
\Wword 문자 아님
\sspace 공백
\Sspace 공백 아님

quiz.
1. 전화번호부 모두 출력해봐라
2. 이메일 모두 출력해라
3. 유튜브 고유번호만 출력해라

profile
Front-Dev

0개의 댓글