본문 바로가기

JAVASCRIPT

RegExp(정규표현식)

생성자는 패턴을 사용해 텍스트를 판별할 때 사용함

let re = /\w+/
let re = new RegExp('\\w+')

위의 두줄은 동일한 정규표현식 생성

 

정규표현식 사용해서 데이터 형식바꾸기

let re = /(\w+)\s(\w+)/
let str = 'John Smith'
let newstr = str.replace(re, '$2, $1')
console.log(newstr)

>>"Smith John"

 


내가 사용해본 정규표현식은 pw와 email을 입력할 때 넣어주는 몇가지의 규칙을 적용할 때 사용하였다.

pw: 영어.숫자, 특수기호 사용, 8글자이상 20글자 이하

  const pwValidation = new RegExp(
    "^(?=.*[A-Za-z])(?=.*[0-9])(?=.*[!@#$%^&*])(?=.{8,20})"
  );

email: @를 사용

  const emailValidation = new RegExp(
    "/^[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*.[a-zA-Z]{2,3}$/i"
  );

실제 규칙이 적용되었는지 확인하는 코드

 if (!pwValidation.test(password) && !emailValidation.test(email)){
    const err = new Error("PASSWORD_OR_EMAIL_IS_NOT_VALID");
    err.statusCode = 409;
    throw err;
  }

 

'JAVASCRIPT' 카테고리의 다른 글

구조분해할당-기초?예시  (0) 2023.03.27
app.get VS router.get  (0) 2023.03.26
비동기처리(callback, async/await)  (0) 2023.03.23
Json.stringify()  (0) 2023.03.16
dom - getElementById &querySelector  (0) 2023.03.03