[위 에] javaScript 정규 표현 식 (위)

임병 문 에 반 카 카 오리지널.전재 출처 를 밝 혀 주 십시오http://blog.csdn.net/evankaka           요약: 정규 표현 식 은 일반 문자 (예 를 들 어 문자 a 에서 z) 와 특수 문자 (메타 문자 라 고 함) 로 구 성 된 문자 모드 입 니 다.이 모드 는 텍스트 주 체 를 찾 을 때 일치 하 는 문자열 하나 이상 을 설명 합 니 다.정규 표현 식 은 템 플 릿 으로 검색 한 문자열 과 일치 합 니 다.
1. 정규 표현 식 은 무엇 입 니까?
1. 정규 표현 식:
• 문자열 의 어떤 패턴 을 테스트 합 니 다.예 를 들 어 이 문자열 에 전화번호 모드 나 신용카드 번호 모드 가 있 는 지 입력 문자열 을 테스트 할 수 있 습 니 다.데이터 유효성 검증 이 라 고 합 니 다.
텍스트 바 꾸 기문서 에 정규 표현 식 을 사용 하여 특정 문 자 를 표시 한 다음 모두 삭제 하거나 다른 문자 로 바 꿀 수 있 습 니 다. 패턴 에 따라 문자열 에서 키 문자열 을 추출 할 수 있 습 니 다.텍스트 나 입력 필드 에서 특정 텍스트 를 찾 을 수 있 습 니 다.
2. 정규 표현 식 문법
정규 표현 식 은 일반 문자 (예 를 들 어 문자 a 에서 z) 와 특수 문자 (메타 문자 라 고 함) 로 구 성 된 문자 모드 입 니 다.이 모드 는 텍스트 주 체 를 찾 을 때 일치 하 는 문자열 하나 이상 을 설명 합 니 다.정규 표현 식
검색 한 문자열 과 일치 하 는 템 플 릿
3. 일반 문자 자모, 숫자, 한자, 밑줄, 그리고 뒷부분 에 특별한 정의 가 없 는 구두점 기 호 는 모두 '일반 문자' 입 니 다.표현 식 의 일반 문 자 는 문자열 과 일치 할 때 같은 문자 와 일치 합 니 다.
4. 특수 문자
\ \ 를 전의 로 한다. 즉, 보통 '\' 뒤에 있 는 문 자 는 원래 의 의미 에 따라 해석 되 지 않 는 다. 예 를 들 어 / b / 일치 하 는 문자 'b' 는 b 앞 에 반사 봉 을 추가 한 후 / \ b / 는 한 단어 와 일치 하 는 경계 로 바뀐다.정규 표현 식 기능 문자 복원, 예 를 들 어 "*" 일치
앞 에 있 는 원 문 자 는 0 번 또는 여러 번, / a * / a, aa, aa 와 일치 합 니 다. "\" 를 추가 한 후, / a \ * / 는 "a *" 와 만 일치 합 니 다.
정규 표현 식 은 흔히 볼 수 있 는 문자 와 일치 하 는 몇 가지 사전 정의 클래스 를 제공 합 니 다.
문자
등가 류
속뜻
.
[^\r]
리 턴 문자 와 줄 바 꿈 자 를 제외 한 모든 문자
\d
[0-9]
숫자 문자
\D
[^0-9]
비 숫자 문자
\s
[ \t\x0B\f\r]
공백 부호
\S
[^ \t\x0B\f\r]
비 공백 문자
\w
[a-zA-Z_0-9]
단어 문자 (알파벳, 숫자, 밑줄)
\W
[^a-zA-Z_0-9]
비 단어 문자
일부 뒷부분 에 특수 한 용도 가 있 는 문장 부 호 는 앞 에 '\' 를 붙 인 후에 이 기호 자 체 를 대표 한다.예 를 들 어 ^, $는 모두 특별한 의미 가 있 습 니 다. 문자열 의 '^' 와 '$' 문 자 를 일치 시 키 려 면 표현 식 은 '\ \ ^' 와 '\ $' 로 써 야 합 니 다.
5. 중복 문자 일치
문자
매 칭
{n,m}
이전 항목 과 최소 n 회 일치 하지만 m 회 를 초과 할 수 없습니다.
{n,}
이전 n 회 이상 일치
{n}
이전 n 회 일치

이전 항목 과 0 번 또는 1 번 일치 합 니 다. 즉, 이전 항목 은 선택 할 수 있 습 니 다. {0, 1} 과 같 습 니 다.
+
이전 항목 과 1 회 또는 여러 번 일치 합 니 다. {1,}
*
이전 항목 과 0 번 또는 여러 번 일치 합 니 다. {0,}
6. 문자 클래스: 닻 문자 일치
메타 문자 / 메타 기호
매 칭
$
문자열 의 끝 과 일치 합 니 다. 여러 줄 검색 에서 한 줄 의 끝 과 일치 합 니 다.
^
문자열 의 시작 과 일치 합 니 다. 여러 줄 검색 에서 한 줄 의 시작 과 일치 합 니 다.
\A
일치 하 는 문자열 시작 부분 만
\b
단어 경계 와 일치 합 니 다. 단어 가 [] 안에 있 을 때 유효 하지 않 습 니 다.
\B
비 단어 경계 일치
\G
현재 검색 의 시작 위치 와 일치 합 니 다.
\Z
일치 하 는 문자열 끝 이나 줄 끝
\z
문자열 끝 에 만 일치
정규 표현 식
1) 정규 표현 식 을 정의 하 는 데 는 두 가지 형식 이 있 는데 하 나 는 일반 방식 이 고 하 나 는 구조 함수 방식 이다.
2) 일반 방식: var reg = / 표현 식 / 추가 매개 변수
표현 식: 하나의 문자열 은 특정한 규칙 을 대표 합 니 다. 그 중에서 특정한 특수 문 자 를 사용 하여 특수 한 규칙 을 대표 할 수 있 습 니 다. 나중에 상세 하 게 설명 할 것 입 니 다.
추가 매개 변수: 표현 식 의 의 미 를 확장 하 는 데 사용 되 며, 현재 세 개의 매개 변수 가 있 습 니 다.
g: 전역 매 칭 이 가능 합 니 다.
i: 대소 문 자 를 구분 하지 않 고 일치 하 는 것 을 의미 합 니 다.
m: 여러 줄 의 일치 가 가능 합 니 다.
위의 세 개의 매개 변 수 는 임의로 조합 할 수 있 고 복합 적 인 의 미 를 대표 하 며 물론 매개 변 수 를 추가 하지 않 아 도 된다.
예: var reg = / a * b /;
var reg=/abc+f/g;
3) 구조 함수 방식: var reg = new RegExp ("표현 식", "추가 매개 변수");
그 중에서 '표현 식' 과 '추가 매개 변수' 의 의 미 는 위의 정의 방식 에서 의 의미 와 같다.
예시
var reg=new RegExp(“a*b”);
var reg=new RegExp(“abc+f”,”g”);
4) 일반 방식 과 구조 함수 방식 의 차이
일반 방식 의 표현 식 은 상수 문자열 이 어야 합 니 다. 구조 함수 의 표현 식 은 상수 문자열 일 수도 있 고 js 변수 일 수도 있 습 니 다. 예 를 들 어 사용자 의 입력 에 따라 표현 식 매개 변수 로 사용 할 수도 있 습 니 다.
var reg=new RegExp(document.forms[0].exprfiled.value,”g”);
3. 정규 표현 식
중국어 문자 와 일치 하 는 정규 표현 식: [\ u4e 00 - \ u9fa 5] 평가: 중국어 와 일치 하 는 것 은 정말 골 치 아 픈 일 입 니 다. 이 표현 식 이 있 으 면 두 바이트 문자 (한 자 를 포함) 와 일치 하 는 문 자 를 만 들 수 있 습 니 다. [^ \ x00 - \ xff] 평가: 문자열 의 길 이 를 계산 할 수 있 습 니 다.공백 줄 과 일치 하 는 정규 표현 식: \ s * \ r 주석: HTML 태그 와 일치 하 는 정규 표현 식 을 삭제 할 수 있 습 니 다: < (\ S *?) [^ >] *. *? < / \ \1>|<.*? />평 주: 인터넷 에 떠 도 는 버 전이 너무 엉망 입 니 다. 위 에 있 는 것 도 일치 하 는 부분 만 있 습 니 다. 복잡 한 끼 워 넣 은 태그 에 대해 서 는 수미 공백 문자 와 일치 하 는 정규 표현 식 이 없습니다. ^ \ s * | \ s * $평 주: 줄 의 첫 줄 끝의 공백 문자 (빈 칸, 탭 문자, 페이지 바 꾸 기 등 포함) 를 삭제 할 수 있 습 니 다. 매우 유용 한 표현 식 은 Email 주소 와 일치 하 는 정규 표현 식 입 니 다. \ w + ()[- +.] \ w +) * @ \ w + ([-.] \ w +) * \. \ w + ([-.] \ w +) * 평가: 폼 검증 시 사이트 URL 과 일치 하 는 정규 표현 식 을 실 용적 으로 사용 할 수 있 습 니 다. [a - zA - z] +: / [^ \ s] * 평가: 인터넷 에 떠 도 는 버 전 기능 이 제한 되 어 있 습 니 다. 위 에 있 는 이 기본 적 인 수 요 를 만족 시 킬 수 있 습 니 다. 계 정 이 합 법 적 인지 (알파벳 시작, 5 - 16 바이트 허용, 알파벳 숫자 밑줄 허용): ^ [a - zA - Z] [a - Z0 - 9] {4, 15}$평가: 폼 검증 시 국내 전화번호 와 실 용적 으로 일치 합 니 다: \ d {3} - \ d {8} | \ d {4} - \ d {7} 평가: 0511 - 4405222 또는 021 - 87888888888822 와 같은 일치 합 니 다. 텅 쉰 QQ 번호: [1 - 9] [0 - 9] {4,} 평가: 텅 쉰 QQ 번 호 는 10000 부터 중국 우편 번호 와 일치 합 니 다: [1 - 9] \ d {5} (?! \ d) 평가: 중국 우편 번 호 는 6 자리 숫자 로 신분증 과 일치 합 니 다: \ d {15} \ d {18}평가: 중국의 신분증 은 15 비트 또는 18 비트 가 ip 주소 와 일치 합 니 다. \ \ d + \. \ d + \. \ d + \ \. \ \ d + \. \ d + 평가: ip 주 소 를 추출 할 때 특정 숫자 와 일치 합 니 다.
^[1-9]\d*$    //     
^-[1-9]\d*$   //     
^-?[1-9]\d*$   //    
^[1-9]\d*|0$  //      (    + 0)
^-[1-9]\d*|0$   //      (    + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$   //      
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$  //      
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$  //     
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$   //       (     + 0)
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$  //       (     + 0)

특정 문자열 일치
4. 567913. 그리고 다음 과 같다.
^[A-Za-z]+$  //   26           
^[A-Z]+$  //   26              
^[a-z]+$  //   26              
^[A-Za-z0-9]+$  //      26           
^\w+$  //     、26                
  :              

좋은 웹페이지 즐겨찾기