정규표현식
https://developer.mozilla.org/ko/docs/Web/JavaScript/Guide/Regular_Expressions
정규표현식은
문자열에 특정 문자조합과 대응시키기 위해 사용되는 패턴이다
특정한 패턴을 가지고 어떤 특정 문자열을 비교하여 true/ false로 결과값을 받는다
const expNameText = /[가-힣]+$/;
const expHpText = /^\d{3}-\d{3,4}-\d{4}$/;
const expEmailText = /^[A-Za-z0-9\.\-]+@[A-Za-z0-9\.\-]+\.[A-Za-z0-9
if(!expNameText.test(name.value)){
alert('이름 형식을 확인하세요. 한글만 입력 가능합니다');
}
// text() => 대응되는 문자열이 있는지 확인하는 method
const expNameText = /[가-힣]+$/;
1_ / / .: 슬러시 사이에 패턴을 넣게 되어 있다
2_ [ ] : 한꺼번에 패턴을 입힐 때 사용하는 문자, [ ]대괄호안의 문자는 모두 적용하라는 뜻
3_ 가-힣 : ' - ' 어디서 부터 어디까지의 범위를 뜻한다
한글은 유니코드(조합형)이기 때문에 굉장히 많은 글자가 있다
한글의 첫글자 : 가 / 마지막 글자 : 힣
4_ + : 몇 글자가 되든 상관없다
5_ $ .: 문자열을 끝낸다.
const expHpText = /^\d{3}-\d{3,4}-\d{4}$/;
핸드폰 번호는 010-1111-1111 / 010-111-1111
' - '이 들어가야 하고 2번째 글자는 3개 또는 4개 여야 한다
1_ ^ : 무조건
2_ \d(역슬래시d){3} : 숫자(decimal의 약자) 3글자로 시작돼야 한다
3_ ' - ' .: 입력해야 하는 문자 , [ - ] 대괄호 안에 들어있는 ' - '은 범위 지정
4_ \d{3,4} : 숫자로 시작하고 3글자 또는 4글자여야 한다
5_ \d{4}$ .: 4글자 숫자로 끝나야 한다
const expEmailText = /^[A-Za-z0-9\.\-]+@[A-Za-z0-9\.\-]+\.[A-Za-z0-9\.\-]+$/;
// 앞에 있는글자는 알파벳 - . 가능 / @ 포함 / 뒤에 알파벳 - . 가능 / . 포함 /
1_ ^[ ]+ : ' + ' 몇 글자가 돼도 상관은 없는데, ' ^ ' 무조건 [ ] 괄호 안의 내용대로 시작해야 한다
2_ A-Za-z0-9\.\- : 대문자A-Z까지, 소문자 a-z까지, \.\- (특수문자 앞 역슬래시) : 대괄호 안의 내용
3_ @ . : [ ] 대괄호 밖에 쓰여 있음 => '@' 문자 꼭 포함
4_ \. [A-Z...]+$ .: [ ] 대괄호 밖에 쓰여 있는 ' . ' 정규식에서 사용하는 문자이기 때문에 \(역슬래시)로
' . ' 을 입력해야하는 필수 문자로 사용하겠다고 정의해줌
5_ [A-Z...]+$ : ' . ' 다음에는 A-Z로 시작하는 문자가 오면 되고 + 길이는 상관없고 $ 끝낸다
'개발공부_Blog > JavaScript' 카테고리의 다른 글
JSON.stringify() - 객체, 값을 JSON문자열 형태로 (0) | 2022.09.04 |
---|---|
Prettier설정_코딩스타일 통일하기 (0) | 2022.08.15 |
isNaN() - NaN인지 판별하는 함수 (0) | 2022.01.18 |
javascript _ Date() 밀리초를 날짜로 변환하기 (0) | 2022.01.18 |
Date객체 2 - 시간, 분, 초 (0) | 2022.01.15 |
댓글