공부공부/JS 딥다이브

[js 딥다이브] 31장 RegExp

고생쨩 2024. 2. 15. 08:47
728x90

정규식

정규 표현식의 생성

const regexp = /is/i;
const regexp = new RegExp(/is/i);

메서드

exec
매칭결과를 배열로 반환

test
매칭결과를 불리언으로 반환 <<젤 많이 씀

match
매칭결과를 배열로 반환, exec와의 차이점은 g플래그가 동작한다는거

플래그

플래그 설명
i 대소문자 구별없이
g 전역 검색
m 행이 바뀌어도 계속 검색
u 유니코드

패턴

//기본 사용법 /문자열/플래그;

//반복 {}
// 'A'가 최소 1번, 최대 2번 반복되는 문자열을 전역 검색한다.
const regExp = /A{1,2}/g;
// 'A'가 최소 2번 이상 반복되는 문자열을 전역 검색한다.
const regExp = /A{2,}/g;
// 'A'가 최소 한 번 이상 반복되는 문자열('A, 'AA', 'AAA', ...)을 전역 검색한다.
const regExp = /A+/g;

//OR 검색
// 'A' 또는 'B'를 전역 검색한다.
const regExp = /A|B/g;
const regExp = /[AB]+/g; //간략화

/[A-Z] //범위

 /[0-9,]+ //쉼표가 들어간 숫자

 \w //알파벳, 숫자, 언더스코어를 의미한다. 즉, \w는 [A-Za-z0-9_]와 같다
 \W //알파벳, 숫자, 언더스코어가 아닌 문자를 의미

 // 숫자를 제외한 문자열을 전역 검색한다.
const regExp = /[^0-9]+/g;

// []밖의 ^는 시작 위치
const regExp = /^https/;

// $는 문자열의 마지막, 'com'으로 끝나는지 검사한다.
const regExp = /com$/;

// 'http://' 또는 'https://'로 시작하는지 검사한다.
/^https?:\/\//.test(url);
/^(http|https):\/\//.test(url);

// 숫자로만 이루어진 문자열인지 검사한다.
/^\d+$/.test(target);

const email = 'ungmo2@gmail.com';
/^[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*\.[a-zA-Z]{2,3}$/.
test(email);

const email = 'ungmo2@gmail.com';
/^[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*\.[a-zA-Z]{2,3}$/.
test(email);

'공부공부 > JS 딥다이브' 카테고리의 다른 글

[js 딥다이브] 33장 Symbol  (0) 2024.02.15
[js 딥다이브] 32장 String  (0) 2024.02.15
[js 딥다이브] 30장 Date  (0) 2024.02.15
[js 딥다이브] 29장 Math  (0) 2024.02.15
[js 딥다이브] 27장 배열  (0) 2024.02.15

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.