# 정규 표현식
정규 표현식 규칙을 일치, 지정된 [특징] 표현을 찾기 위해 사용되는 표현이다.
# 정규 표현식은 방법을 정의
```
var에 등록 = / ABC /;
var에 등록이 새 정규 표현식 = ( 'ABC');
권장 사용 문자 그대로의 방법은, 배열 및 객체로, 문자 그대로의 방법을 권장 만들
#을 사용하여 정규 표현식
```
reg.test (STR);
str.match (REG);
특기 # I / g / m
G는 글로벌 경기의 글로벌 대표
나는하여 ignoreCase 대신 사건을 무시
m은 복수의 행과 일치 여러 나타낸다
# 특수 문자
특별한 의미를 갖는 문자.
이스케이프 문자 \
| 또는
## 대괄호
```
[ABC 방송] 대괄호는 단일 문자를 찾습니다
[^ ABC 방송] 괄호에없는 모든 문자를 찾기
[0-9] (0-9) 사이의 번호를 찾는
[아즈]는 모든 소문자 문자를 찾을 수
[AZ]는 모든 대문자를 찾을 수
[아즈]는 어떤 편지를 찾을 수
(레드 | 블루 | 녹색) 지정된 검색 문자열 (표현식)
## 메타 문자
```
하나의 문자를 찾아 줄 바꿈과 라인 엔딩을 제외하고.
\ W는 단어 문자를 찾습니다
\ W 비 단어 문자 찾기
\ D 디지털 찾을 수
\가 아닌 디지털 찾기 D
\ S는 공백 문자 찾기
\ S는 공백이 아닌 문자를 찾기
\ B 단어 경계 찾기
\ B는 비 단어 경계 찾기
\ N은 줄 바꿈을 찾기
\ F 찾기 바꿈 문자
\ R 찾기에 캐리지 리턴
\ T의 찾기 탭
\ V 수직 탭을 찾기
\ Uxxx는 여섯 16 진수 XXXX의 규정에 유니 코드 문자를 찾을 수
## 정량
다음은 탐욕 일치를 따라 있습니다 :
N + N 어떤 캐릭터가 적어도 하나 포함 일치
N * 모든 문자는 N의 0 또는 그 이상의 발생을 포함 일치
N? 어떤 문자 나 0 N의 일치
N X N의 {X} 문자열 일치 서열
N {X, Y} X N Y까지의 서열과 일치하는 문자열
N N $ 문자열은로 끝나는
^ N은 N으로 시작되는 문자열과 일치
? N 지정된 문자열이 즉시 N 이어진다 일치하는 문자열 =
?! N 즉시 지정된 문자열 N 다음되지 않은 문자열과 일치
비 욕심 경기 :
N +? 엔*? ...
## 보충
```
(: N) 일치하는 하위 표현이 아니다 (그룹화 원 기입하지 않습니다)
# 정규식 개체 속성
g 플래그를 가지고 글로벌 정규식 객체 있는지 확인
는 I 마크가 있는지하여 ignoreCase 정규식 개체를 확인
M 표시와 여러 줄 정규식 개체 여부를 확인
소스보기 정규 표현식 소스 텍스트
는 lastIndex 정수 플래그 (일반적으로 Exec과 함께 사용) 다음 문자 위치 일치를 시작합니다
# 정규식 객체 메소드
컴파일 정규 표현식을 컴파일합니다. (이 정규 표현식을 변경하는 것)
검색 문자열에 지정된 Exec에서 값. 반환 찾기의 가치와 그 위치를 결정합니다.
테스트는 문자열에 지정된 값을 검색 할 수 있습니다. 반환 참 또는 거짓.
# 문자열 방법
정규 표현식 검색 검색 값 일치
경기 결과는 정규 일치하는 조건 라인에 찾기
또한 문자열을 정규 표현식과 일치하는 교체
문자열 배열로 분할 (참고 : 분할 단어 발현 표현식 경우 남아)
```
// bbaa에 정규 표현식 양식의 AABB
// var에 str을 = 'AABBCCDD';
// var에 등록 = / (\ w) \ 1 (\ w) \ 2 / g;
// VAR STR1 = str.replace (REG, 함수 ($ $ 1, $ 2) {
// 반환 $ 2 + $ 2 + $ 1 + $ 1;
//})
// CONSOLE.LOG (STR1); // bbaaddcc
// 100 억 세 타점 10.000.000.000가되기
// var에 str을 = '10000000000';
// VAR 등록 = / (? = (\ B) (\ D {3}) + $) / g;
// str.replace (REG, '.'); //10.000.000.000
// 문자열 abc 방송은 무거운 aaaaaaaaaaaaaaaaaaaaaabbbbbbbbcccccccccc되기 위해
// var에 str을 = 'aaaaaaaaaaaaaaaaaaaaaabbbbbbbbcccccccccc';
// VAR 등록 = / (\ w) \ 1 * (\ w) \ 2 * (\ w) \ 3 * / g;
// str.replace (REG, 함수 ($ $ 1, $ 2 $ 3) {
// 반환 $ 1 + $ 2 + $ 3이고;
//}); //"알파벳"
// 작은 혹 수식 theFirstName에-처음 이름을 변환
// var에 str을 = '는 최초의 이름';
// var에 등록 = / - (\ w) / g;
// str.replace (등록 번호, 기능 ($, $ 1) {
//) $ 1.toUpperCase를 (반환;
//}) // theFirstName
// 디지털의 끝과 일치
// var에 str을 = 'dkfdj1232';
// VAR 등록 = / \ 차원 $ / g;
// str.match (REG); // [ "2"]
// 공간 통합 번호
// var에 str을 = 'fkjdf';
// VAR 등록 = / \ S + / g;
// str.replace (등록, ''); // "fkjdf"
분석 // 문자열은 디지털에 의해 형성되지
// var에 STR = 'fdjfd214234234';
// VAR 등록 = / (\ D * : [A-ZA-Z]) / g;
// reg.test (STR); // 거짓
문자열의 공백을 삭제 //
// 삭제 후행 공백
// VAR의 STR = 'D kdfjd dfjdkf';
// var에 등록 = / (^ \이야 *) | (\ S *) $ / g;
// str.replace (REG, ''); // "D kdfjd dfjdkf"
모든 공백을 제거 //
// VAR 등록 = / (\ S *) / g;
// str.replace (등록, ''); // "dkdfjddfjdkf"
// ID 번호가 일치
// var에 str을 = '12345678976543879X';
// VAR 등록 = / (^ \ {15} D $) (| ^ \ {18} D $) (| ^ \ {17} D (\ D | X | X) $) /; // 전역에 필요 일치
// reg.test (STR);
// 이메일 주소 확인
STR = '[email protected]'이었다;
레지 = /^[0-9a-zA-Z_-]+@[0-9a-zA-Z_-]+(\.[0-9a-zA-Z_-]+)+$/이었다;
reg.test (STR);