● 정규표현식이란
기본적으로 사용자가 입력하는 회원가입, 로그인, 수정페이지 등의 값들을 형식에 맞게 썼는지 제대로 검증해야한다.
그 검증과정에서 사용하는것이 정규표현식.
보통은 이런 검증 2중으로 하는데 javascript와 php 양쪽 다 한다. (특히 php쪽에서는 꼭 해야함)
· javascript에서 쓰는 정규표현식과 php에서 쓰는 정규표현식은 거의 비슷하면서도 다르다.
/ ‘’ 등이 들어가는게 있고 아닌게 있음. 결국 둘 다 쓰려면 다 따로 찾아야한다.
javascript에서 사용하는 정규표현식은 정규표현식 객체 생성자이다.
ex) let email = new RegExp('정규 표현식 패턴');
[PHP] 번호 형식 정규식
function wz_get_number_str($number) {
$number = str_replace('-', '', $number);
if (preg_match("/([0-9]{4})([0-9]{4})([0-9]{4})([0-9]{4})/", $number)) { // 카드번호
return preg_replace("/([0-9]{4})([0-9]{4})([0-9]{4})([0-9]{4})/", "\\1-\\2-\\3-\\4", $number);
}
else if (preg_match("/([0-9]{3})([0-9]{4})([0-9]{4})/", $number)) { // 휴대폰번호
return preg_replace("/([0-9]{3})([0-9]{4})([0-9]{1,4})/", "\\1-\\2-\\3", $number);
}
else if (preg_match("/(0[0-9]{1,2})([0-9]{3})([0-9]{4})/", $number)) { // 일반번호
return preg_replace("/([0-9]{2,3})([0-9]{3})([0-9]{4})/", "\\1-\\2-\\3", $number);
}
else if (preg_match("/([0-9]{3})([0-9]{2})([0-9]{5})/", $number)) { // 사업자번호
return preg_replace("/([0-9]{3})([0-9]{2})([0-9]{5})/", "\\1-\\2-\\3", $number);
}
else {
return $number;
}
}
출처 : https://wetoz.kr/html/board.php?bo_table=tipntech&wr_id=370
번호 형식 정규식 > 정보공유 | 위토즈
웹프로그램개발, 영카트, 그누보드, 코드이그나이터, 개발자판매몰
wetoz.kr
[javascript] javascript 정규식
// 이메일 체크 정규식
function isEmail(asValue) {
var regExp = /^[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*\.[a-zA-Z]{2,3}$/i;
return regExp.test(asValue); // 형식에 맞는 경우 true 리턴
}
// 핸드폰 번호 체크 정규식
function isCelluar(asValue) {
var regExp = /^01(?:0|1|[6-9])-(?:\d{3}|\d{4})-\d{4}$/;
return regExp.test(asValue); // 형식에 맞는 경우 true 리턴
}
비밀번호 체크 정규식
function isJobPassword(asValue) {
var regExp = /^(?=.*\d)(?=.*[a-zA-Z])[0-9a-zA-Z]{8,10}$/; // 8 ~ 10자 영문, 숫자 조합
return regExp.test(asValue); // 형식에 맞는 경우 true 리턴
}
출처 : https://junjunrecord.tistory.com/88
'기타' 카테고리의 다른 글
공통함수 만드는데 주의 점! (0) | 2023.06.30 |
---|---|
프로그래밍 할 때 글꼴 선택 (0) | 2023.06.30 |
try-catch-finally 실행 순서 (0) | 2023.06.26 |
[VS][단축키]Visual Studio Code 단축키 (0) | 2023.02.08 |
변수명 (0) | 2023.02.01 |