리터럴은 데이터를 뜻하는 말로 변수에 넣는 변하지 않는 데이터를 의미한다.
정규식 리터럴은 스크립트가 불러와질 때 컴파일된다.
만약 정규식이 상수라면, 위와 같이 사용 하는 것이 성능을 향상시킬 수 있다.
const regexp1 = /^abc/; // => /패턴/
const regexp2 = /^abc/gi; // => /패턴/플래그
정규식 객체인 RegExp의 생성자 함수를 사용해 인스턴스를 생성하는 방법도 존재한다.
리터럴 방법과 달리 정규식이 실행 시점에 컴파일된다.
정규식의 패턴이 변경될 수 있는 경우, 혹은 사용자 입력과 같이 다른 출처로부터 패턴을 가져와야 하는 경우에는 생성자 함수를 사용하셔야 한다.
const regexp1 = new RegExp(/^abc/i);
const regexp2 = new RegExp(/^abc/, 'i');
const regexp3 = new RegExp('^abc', 'i');
정규표현식... 어렵다.. 유효성 검사 필수 과제를 제출하고 시간이 많이 남게되어 도전과제를 진행해보았으나... 정규식표현으로 사용을 해야되서 학습을 해보았지만 너무 어려웠다. 마음 같아선 정규식표현 말고 다른 풀이방식으로 진행하고 싶었으나, 정규식표현도 언젠가는 사용을 할 것 같아서 이번 기회에 학습을 해보려고한다.