개발관련/javascript 유용한정규식 - SMALL var str = "한글 <!-- 주석 --> <SCRIPT type=text/javascript>window.alert('hellow')<\/script>"; str += "<style type='text/css> td {font-size:9pt;}<\/style>"; str += "<br /> <h3>Hellow Blog</h3>"; //태그제거 var RegExpTag = "<[^<|>]*>"; str = str.replace(RegExpTag,""); //result : 한글 window.a lert('hellow'); td {font-size:9pt;} Hellow Blog //스크립트 제거 var RegExpJS = "<script[^>]*>(.*?)</SCRIPT>"; str = str.replace(RegExpJS,""); //result : 한글 <!-- 주석 --> <STYLE type=text/css> td {font-size:9pt;} </STYLE> <BR> <H3>Hellow Blog</H3> //스타일 제거 var RegExpCSS = "<STYLE[^>]*>(.*?)</STYLE>"; str = str.replace(RegExpCSS,""); //result : 한글 <!-- 주석 --> <SCRIPT type=text/javascript>window.a lert('hellow');</SCRIPT><BR><H3>Hellow Blog</H3> //한글 제거 var RegExpHG = "[ㄱ-ㅎ가-힣]"; str = str.replace(RegExpHG,""); //result : <!-- 주석 --> <SCRIPT type=text/javascript>window.a lert('hellow');</SCRIPT><STYLE type=text/css> td {font-size:9pt;}</STYLE><BR><H3>Hellow Blog</H3> //주석 제거 var RegExpDS = /<!--[^>](.*?)-->/g; str6 = str.replace(RegExpDS,""); //result : 한글 <SCRIPT type=text/javascript>window.a lert('hellow');</SCRIPT><STYLE type=text/css> td {font-size:9pt;}</STYLE><BR><H3>Hellow Blog</H3> //숫자만 function num_check(el){ var pattern = /^[0-9.]+$/; return pattern.test(el.value) ? true : "반드시 숫자로만 입력해야 합니다"; } //영문만 function(el) { var pattern = /^[a-zA-Z]+$/; return pattern.test(el.value) ? true : "invalid"; } //한글 function(el) { var pattern = /[가-힝]/; return pattern.test(el.value) ? true : "반드시 한글을 포함해야 합니다"; } //이메일 function(el,value) { var value = value ? value : el.value; var pattern = /^[_a-zA-Z0-9-\.]+@[\.a-zA-Z0-9-]+\.[a-zA-Z]+$/; return pattern.test(value) ? true : "invalid"; } //사이트주소 function(el,value) { var pattern = /^(0[2-8][0-5]?)-?([1-9]{1}[0-9]{2,3})-?([0-9]{4})$/; var pattern15xx = /^(1544|1566|1577|1588|1644|1688)-?([0-9]{4})$/; var num = value ? value : el.value; return pattern.exec(num) || pattern15xx.exec(num) ? true : "invalid"; } //휴대폰 번호 function(el,value) { var pattern = /^(01[01346-9])-?([1-9]{1}[0-9]{2,3})-?([0-9]{4})$/; var num = value ? value : el.value; return pattern.exec(num) ? true : "invalid"; } //일반 전화번호 function(el,value) { var pattern = /^(0[2-8][0-5]?|01[01346-9])-?([1-9]{1}[0-9]{2,3})-?([0-9]{4})$/; var pattern15xx = /^(1544|1566|1577|1588|1644|1688)-?([0-9]{4})$/; var num = value ? value : el.value; return pattern.exec(num) || pattern15xx.exec(num) ? true : "invalid"; } //사업자 번호 function(el,value) { var pattern = /([0-9]{3})-?([0-9]{2})-?([0-9]{5})/; var num = value ? value : el.value; if (!pattern.test(num)) return "invalid"; num = RegExp.$1 + RegExp.$2 + RegExp.$3; var cVal = 0; for (var i=0; i<8; i++) { var cKeyNum = parseInt(((_tmp = i % 3) == 0) ? 1 : ( _tmp == 1 ) ? 3 : 7); cVal += (parseFloat(num.substring(i,i+1)) * cKeyNum) % 10; } var li_temp = parseFloat(num.substring(i,i+1)) * 5 + "0"; cVal += parseFloat(li_temp.substring(0,1)) + parseFloat(li_temp.substring(1,2)); return parseInt(num.substring(9,10)) == 10-(cVal % 10)%10 ? true : "invalid"; } //외국인 번호 function(el,value) { var pattern = /^(\d{6})-?(\d{5}[7-9]\d{1})$/; var num = value ? value : el.value; if (!pattern.test(num)) return "invalid"; num = RegExp.$1 + RegExp.$2; if ((num[7]*10 + num[8]) %2) return "invalid"; var sum = 0; var last = num.charCodeAt(12) - 0x30; var bases = "234567892345"; for (var i=0; i<12; i++) { if (isNaN(num.substring(i,i+1))) return "invalid"; sum += (num.charCodeAt(i) - 0x30) * (bases.charCodeAt(i) - 0x30); } var mod = sum % 11; return (11 - mod + 2) % 10 == last ? true : "invalid"; } //주민등록 번호 function(el,value) { var pattern = /^([0-9]{6})-?([0-9]{7})$/; var num = value ? value : el.value; if (!pattern.test(num)) return "invalid"; num = RegExp.$1 + RegExp.$2; var sum = 0; var last = num.charCodeAt(12) - 0x30; var bases = "234567892345"; for (var i=0; i<12; i++) { if (isNaN(num.substring(i,i+1))) return "invalid"; sum += (num.charCodeAt(i) - 0x30) * (bases.charCodeAt(i) - 0x30); } var mod = sum % 11; return (11 - mod) % 10 == last ? true : "invalid"; } //주민번호2 function(el,value) { var pattern = /^(\d{6})-?(\d{5}(\d{1})\d{1})$/; var num = value ? value : el.value; if (!pattern.test(num)) return "invalid"; num = RegExp.$1 + RegExp.$2; if (RegExp.$3 == 7 || RegExp.$3 == 8 || RegExp.$4 == 9) if ((num[7]*10 + num[8]) %2) return "invalid"; var sum = 0; var last = num.charCodeAt(12) - 0x30; var bases = "234567892345"; for (var i=0; i<12; i++) { if (isNaN(num.substring(i,i+1))) return "invalid"; sum += (num.charCodeAt(i) - 0x30) * (bases.charCodeAt(i) - 0x30); } var mod = sum % 11; if(RegExp.$3 == 7 || RegExp.$3 == 8 || RegExp.$4 == 9) return (11 - mod + 2) % 10 == last ? true : "invalid"; else return (11 - mod) % 10 == last ? true : "invalid"; } 이 글은 스프링노트에서 작성되었습니다. LIST 좋아요공감공유하기 URL 복사카카오톡 공유페이스북 공유엑스 공유 게시글 관리 구독하기기록하자 잊어먹지말고~ Contents 당신이 좋아할만한 콘텐츠 간단함수 2011.04.21 즐겨찾기 및 상단으로 올리기 2011.04.21 정규식 2011.04.21 댓글 0 + 이전 댓글 더보기 기록하자 잊어먹지말고~자주 잊어먹는것들을 기록해 놓을려고합니다.^^구독하기