본문 바로가기
JavaScript

[JavaScript] 정규 표현식 2)정규식 특수 문자, 자주 쓰는 정규식 정리

by dev또리 2023. 3. 9.
728x90

 

 

정규 표현식 특수 문자, 설명

 

정규표현식 특수문자
정규표현식 특수문자


 

자주 쓰는 정규식 정리

 

1. 공백없는 숫자와 대소문자

/^[a-zA-Z0-9]*$/

 

2. 공백포함 숫자와 대소문자

/^[a-zA-Z0-9 ]*$/

 

3. 한글포함 특수문자와 공백

/[^?a-zA-Z0-9/]/

 

4. 한글제외 특수문자와 공백

/[^-가-?a-zA-Z0-9/ ]/

 

5. 영문자, 소문자, 숫자, "-","_" 로만 구성된 길이 2~10자리 사이의 문자열

/^[a-z0-9_-]{2,10}$/

 

6. 19자리 숫자와 "-"로 구성된 신용카드 번호

/^[0-9-]{19}$/

 

7. 숫자로 구성된 4자리-4자리-4자리-4자리 유형 체크 (ex. 신용카드 번호)

/^[0-9]{4}[-\s\.]?[0-9]{4}[-\s\.]?[0-9]{4}[-\s\.]?[0-9]{4}$/

 

8. 영문자 대소문자, 숫자로만 구성

/[a-zA-Z0-9]/

 

9. 3자리-3~4자리-4자리(사이에 문자 아무거나 가능)

/^\d[3]-\d[3,4]-\d[4]$/

 

10. 일반 전화번호

/^\d{2,3}-\d{3,4}-\d{4}$/;

 

 

11. 휴대폰 번호

/^\d{3}-\d{3,4}-\d{4}$/;

 

12. 맥어드레스 체크

/^[a-fA-F0-9]{2}(:[a-fA-F0-9]{2}){5}$/

 

13. IP 주소 (IPv4)

/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/

 

14. 일반 이메일 주소 체크

/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/

 

15. 정밀한 이메일 주소 체크

/(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))/

 

16. 최소 8자리 이상 영문 대소문자, 숫자, 특수문자가 각각 1개 이상 (패스워드 체크시 활용)

 
/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$ %^&*-]).{8,}$/

 

17. 최소 8자리 이상 숫자, 특수문자가 각각 1개 이상 (패스워드 체크시 활용)

/^(?=.*?[0-9])(?=.*?[#?!@$ %^&*-]).{8,}$/

 

18. URL 체크 (프로토콜 포함, ex) http://www.naver.com )

/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#()?&//=]*)/ 

 

19. URL 체크 (프로토콜 옵션, ex) http://www.naver.com, www.naver.com)  

/(https?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/

 

20. HTML 태그인지 체크

/^<([a-z]+)([^<]+)*(?:>(.*)<\/\1>|\s+\/>)$/

 

21. 하이퍼링크 체크

/(?!<a\sname=\"([\w\s\d\-\.\#]+)\"><\/a>)<a\sname=\"([\w\s\d\-\.\#]+)\">(.*?)<\/a>/

 

22. 숫자인지 체크

^(\(?\+?[0-9]*\)?)?[0-9_\- \(\)]*$

 

23. 웹사이트 링크인지 체크

<a\s+(?:[^>]*)href=\"((?:https:\/\/|http:\/\/)(?:.*?))">(?:.*?)<\/a>

 

24. 년월일 (yyyy-mm-dd) 체크

/^(19|20)\d\d([- /.])(0[1-9]|1[012])\2(0[1-9]|[12][0-9]|3[01])$/

 

25. 주민등록번호 체크

/^[-A-Za-z0-9_]+[-A-Za-z0-9_.]*[@]{1}[-A-Za-z0-9_]+[-A-Za-z0-9_.]*[.]{1}[A-Za-z]{1,5}$/

실제로 많이 사용하는 정규식

^\w+@\w+\.\w+(\.\w+)?$
// 이메일

^\d{2,3}-\d{3,4}-\d{4}$          
// 전화번호 (ex 02-1234-5678)

^01(?:0|1|[6-9])-(?:\d{3}|\d{4})-\d{4}$    
// 휴대폰번호 (ex 010-1234-5678 | 011-123-4567)

^\d{6}\-[1-4]\d{6}$
// 주민번호

^\d{3}-\d{2}$
// 우편번호 (ex 123-45)

 

많이 사용하는 비밀번호 정규식

/(?=.*[0-9])(?=.*[a-z])(?=.*\W)(?=\S+$).{8,20}/

//소문자, 숫자, 특수문자 조합의 8~20자
728x90

댓글