생성자는 패턴을 사용해 텍스트를 판별할 때 사용함
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 |