정규표현식

mangojang·2023년 4월 22일
0
post-custom-banner

✍️ 입력 폼 검증할 때 주로 많이 사용 하는 정규표현식, 매번 찾아 볼 때 마다 언젠가 정리 해야지 해야지 하다가 드디어 지금 한다. 메서드와 주로 사용하는 패턴에 대해 정리해 보았다.

메서드

1. match

(”문자열”).match(정규표현식)

  • 문자열에서 정규표현식에 매칭되는 항목들을 배열로 반환

2. replace

("문자열").replace(/정규표현식/, "대체문자열")

  • 문자열에서 정규표현식에 매칭되는 항목을 대체 문자열로 변환

3. split

("문자열").split(정규표현식)

  • 문자열에서 정규표현식에 매칭되는 항목으로 쪼개어 배열로 반환

4. test

(정규표현식).test("문자열")

  • 문자열이 정규표현식과 매칭 유무를 true/false로 반환

5. exec

(정규표현식).exec("문자열")

  • match와 유사하나, 처음 매칭 되는 것만 반환

패턴

1. 아이디

  • 알파벳 대소문자 + 숫자 , 4~10 자리
const regexr = /^[A-Za-z0-9]{4,10}$/;

2. 핸드폰번호

const regexr = /^\d{3}-\d{3,4}-\d{4}$/;

3. 웹사이트 주소

const regexr = /https?:\/\/[\w\-\.]+/g;

/*
1) http => 로 시작하고,
2) s? => 다음에 s는 없거나, 있고,
3) \/\/ => 다음에 특수기호 // 가 오고
4) [\w\-\.]+ => \w(영문자, 언더스코어), 하이픈, 쩜 으로 이루어진 문자열이 한개 이상(+) 있다.
5) g => 매칭되는걸 모두 다 찾는다.(플래그)
*/

4. 전화 번호

const regexr = /\d{2,3}-\d{3,4}-\d{4}/g;
//[ '010-1111-2222', '02-333-7777' ]

/*
1) \d{2,3} => 숫자 2~3개로 시작하고,
2) \- => 다음에 하이픈(-)이 오고
3) \d{3, 4} => 다음에 숫자가 3~4개 오고,
4) \- => 다음에 하이픈(-)이 오고,
5) \d{4} => 다음에 숫자가 4개 온다.
6) g => 매칭되는걸 모두 다 찾는다(플래그)
*/

5. 이메일

const regexr = /[\w\-\.]+\@[\w\-\.]+/g;

6. 특수기호

// 문자와 숫자가 아닌 것
const regexr = /[^a-zA-Z0-9가-힣ㄱ-ㅎ]/g

참고 문헌

profile
한 걸음 한 걸음 계속 걷는 자가 일류다
post-custom-banner

0개의 댓글