정규: 이 20 개의 정규 표현 식 을 알 면 1, 000 줄 코드 를 적 게 쓸 수 있 습 니 다.

정규 표현 식 은 매우 오래 되 고 강력 한 텍스트 처리 도구 로 아주 짧 은 표현 식 문장 만 사용 하면 매우 복잡 한 업무 논 리 를 신속하게 실현 할 수 있다.정규 표현 식 을 능숙 하 게 익히 면 개발 효율 을 크게 향상 시 킬 수 있다.
정규 표현 식 은 필드 나 임의의 문자열 의 검사 에 자주 사 용 됩 니 다. 예 를 들 어 기본 날짜 형식의 자바 스 크 립 트 코드 를 검사 합 니 다.
var reg = /^(\\d{1,4})(-|\\/)(\\d{1,2})\\2(\\d{1,2})$/; 
var r = fieldValue.match(reg);             
if(r==null)alert('Date format error!');

다음은 기술자 가 정리 한 전단 개발 에서 자주 사용 되 는 정규 표현 식 20 개 입 니 다.
1. 비밀번호 강도 체크
암호 의 강 도 는 대소 문자 와 숫자 를 포함 하 는 조합 이 어야 하 며 특수 문 자 를 사용 할 수 없고 길 이 는 8 - 10 사이 입 니 다.
^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$

2. 중국어 검사
문자열 은 중국어 만 가능 합 니 다.
^[\\u4e00-\\u9fa5]{0,}$

3. 숫자, 26 개의 영문 자모 또는 밑줄 로 구 성 된 문자열
^\\w+$

4. 이메일 주소 확인
비밀번호 와 마찬가지 로 다음은 E - mail 주소 의 정규 검사 문 입 니 다.
[\\w!#$%&'*+/=?^_`{|}~-]+(?:\\.[\\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\\w](?:[\\w-]*[\\w])?\\.)+[\\w](?:[\\w-]*[\\w])?

5. 주민등록번호 확인
다음은 주민등록번호 의 정규 검사 입 니 다.15 위 나 18 위.
15 위:
^[1-9]\\d{7}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}$

18 위:
^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([0-9]|X)$

6. 검사 날짜
"yyy - mm - dd" 형식의 날짜 검증 은 윤년 을 고려 했다.
^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$

7. 검사 금액
금액 검증, 2 자리 소수 까지 정확.
^[0-9]+(.[0-9]{2})?$

8. 휴대폰 번호 확인
다음은 국내 13, 15, 18 로 시작 하 는 핸드폰 번호 정규 표현 식 입 니 다.
^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\\d{8}$

9. IE 버 전 판단
IE 는 아직 완전히 대체 되 지 않 았 습 니 다. 많은 페이지 는 버 전 호 환 을 해 야 합 니 다. 다음은 IE 버 전 검사 표현 식 입 니 다.
^.*MSIE [5-8](?:\\.[0-9]+)?(?!.*Trident\\/[5-9]\\.0).*$

10. IP - v4 주소 확인
IP4 정규 문장.
\\b(?:(?: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]?)\\b

11. IP - v6 주소 확인
IP6 정규 문장.
(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))

12. URL 접두사 검사
응용 개발 에 서 는 요청 이 HTTPS 인지 HTTP 인지 구분 해 야 하 는 경우 가 많 습 니 다. 아래 표현 식 을 통 해 url 의 접 두 사 를 꺼 내 논리 적 으로 판단 할 수 있 습 니 다.
if (!s.match(/^[a-zA-Z]+:\\/\\//))
{
    s = 'http://' + s;
}

13. URL 링크 추출
아래 의 이 표현 식 은 텍스트 의 URL 을 선택 할 수 있 습 니 다.
^(f|ht){1}(tp|tps):\\/\\/([\\w-]+\\.)+[\\w-]+(\\/[\\w- ./?%&=]*)?

14. 파일 경로 및 확장자 검사
윈도 우즈 의 파일 경로 와 확장 자 를 검증 합 니 다. (아래 의 예 는. txt 파일 입 니 다.)
^([a-zA-Z]\\:|\\\\)\\\\([^\\\\]+\\\\)*[^\\/:*?"<>|]+\\.txt(l)?$

15. 색상 Hex 코드 추출
웹 페이지 의 색상 코드 를 추출 해 야 할 때 도 있 습 니 다. 아래 표현 식 을 사용 할 수 있 습 니 다.
^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$

16. 웹 페이지 이미지 추출
웹 페이지 의 모든 그림 정 보 를 추출 하려 면 아래 표현 식 을 사용 하 십시오.
\\< *[img][^\\>]*[src] *= *[\\"\\']{0,1}([^\\"\\'\\ >]*)

17. 페이지 하이퍼링크 추출
html 의 하이퍼링크 추출.
(<a\\s*(?!.*\\brel=)[^>]*)(href="https?:\\/\\/)((?!(?:(?:www\\.)?'.implode('|(?:www\\.)?', $follow_list).'))[^"]+)"((?!.*\\brel=)[^>]*)(?:[^>]*)>

18. CSS 속성 찾기
아래 표현 식 을 통 해 일치 하 는 CSS 속성 을 검색 할 수 있 습 니 다.
^\\s*[a-zA-Z\\-]+\\s*[:]{1}\\s[a-zA-Z0-9\\s.#]+[;]{1}

19. 주석 뽑 기
HMTL 의 설명 을 삭제 하려 면 다음 표현 식 을 사용 하 십시오.
<!--(.*?)-->

20. 일치 하 는 HTML 태그
아래 표현 식 을 통 해 HTML 의 태그 속성 을 일치 시 킬 수 있 습 니 다.
<\\/?\\w+((\\s+\\w+(\\s*=\\s*(?:".*?"|'.*?'|[\\^'">\\s]+))?)+\\s*|\\s*)\\/?>

문 / 기술자 (약서 계약 자)
원본 링크:http://www.jianshu.com/p/e7bb97218946
저작권 은 작가 에 게 있 으 며, 전 재 는 작가 에 게 연락 하여 권한 을 수 여 받 고 '약서 계약 작가' 라 고 표시 해 주 십시오.

좋은 웹페이지 즐겨찾기