새소식

Node.js

정규표현식(Regular Expression) 정리

  • -

정규표현식이란 무엇일까요?

 

정규 표현식은 주로 복잡하고 특정한 규칙을 가진 문자열을 처리하기 위해 사용합니다

실생활에서 이메일 유효성 검사나,전화번호 유효성 검사와 같은 일을 처리할 때 사용하곤 합니다

그럼 지금 부터 정규 표현식이 정확히 무엇인지,어떻게 사용하는 지에 대해 알아보도록 합시다

 

💡정규표현식(Regular Expression)
특정 문자열의 규칙을 가지는 문자열의 집합을 표현하는데 사용되는 언어

 

문자 클래스

정규식 패턴 설명 패턴 종류
\w 문자만 허용 [a-zA-z_0-9]
\W 문자가 아닌 경우만 허용 [^a-zA-z_0-9]
\d 숫자만 허용 [0-9]
\D 숫자가 아닌 경우만 허용 [^0-9]
\s 공백 문자,탭만을 허용 (space,tab,newline)
\S 공백 문자,탭이 아닌 경우만 허용 !(space,tab,newline)

 

어설션

정규식 패턴 설명
^ 문장의 시작(특정 문자열로 시작)
$ 문장의 끝(특정 문자열로 끝)

 

수량자

정규식 패턴 설명
? 없거나 있거나(zero or one)
없거나 많거나 (zero or more)
+ 하나 또는 많이(one or more)
{n} n개가 있는
{min,} 앞의 문자가 최소 min 이상
{min,max} 앞의 문자가 min 이상 max이하인 경우

 

그룹과 범위

정규식 패턴 설명
() 그룹화(하나의 문자로 취급할 때 사용)
[] 문자셋,괄호 안의 어떤 문자든
- [abc] : a,b,c 중 하나를 포함한 경우
- [0-9] : 0부터 9 숫자 중 하나를 포함한 경우
- [a-z] : 소문자 a부터 z 중 하나를 포함한 경우
- [a-zA-Z] : 모든 알파
[^] 부정 문자셋, 괄호 안의 어떤 문자가 아닐 때
(?:) 찾지만 기억하지는 않음

 

 

그럼 자주 사용되는 정규 표현식 예제를 살펴보도록 할까요?

 

이메일

var Email=/^[A-z0-9]{2,20}+@[A-z]{2,20}+\.[a-z]{2,3}$/
  • [A-z0-9]{2,20} : 길이가 2에서 20사이의 알파벳 대소문자와 숫자로 이루어져야함을 의미합니다
  • +@[A-z]{2,20} : +@ 다음에 2에서 20사이의 알파벳 대소문자로 이루어진 문자열이 이어져야 함을 의미합니
  • \.[a-z]{2,3} : \.은 구분자로, . 뒤 길이가 2에서 3인 알파벳 소문자로 이루어져야함을 의미합니다
  •  

핸드폰 번호

var Phone = /^\d{3}-\d{3,4}-\d{4}$/
  • ^\d{3} : 세 자리의 숫자로 시작해야 합니다
  • -\d{3,4} : 하이픈으로 구분되며, 세 자리 또는 네 자리의 숫자로 이루어져야 합니다
  • \d{4}$  : 네 자리의 숫자로 끝나야 합니다

'Node.js' 카테고리의 다른 글

[Node.js] API 란  (1) 2024.02.05
[Node.js] 모듈,npm  (0) 2024.02.01
[Node.js] Sequelize란? Sequelize 주요 메서드정리  (0) 2024.01.10
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.