정규 표현식 요약

일부 특수 기호는 표현의 의미를 추상적 특별한 스탠드 :

표현

효과

^

문자열 일치로 시작하는 경우, 모든 문자와 일치하지 않습니다

$

그리고 문자열 일치의 끝, 모든 문자를 어디에 일치하지 않습니다

/비

단어의 경계, 즉, 위치와 단어 사이의 공간은, 모든 문자를 일치하지 않는 일치

    
    실시 예 1 : 발현 " ^ AAA 매칭에" "XXX XXX AAA" 경기 결과 : 불량. "^"지역과 일치하는 문자열이 필요하기 때문에, 시간의 시작 부분에 "AAA"문자열 "^ AAA는"일치 할 경우에만 따라서 시작 "AAA XXX XXX"등 .

    예 2 : 표현 " AAA $ "일치 "AAA XXX XXX" , 일치하는 결과 : 오류가 발생했습니다. 때문에 "$"가, 시간의 문자열의 끝에있는 "AAA가", "AAA $"가 일치하는 경우에만, 따라서 문자열의 로컬 끝과 일치하는 데 필요한 같은 : "AAA XXX XXX" .

    실시 예 3 : 식 " . / B . 정합"@@@ ABC '' , 매칭 결과는 성공, 유사한 내용이다의 "@", 유사한 위치 : 2 시작과 끝에 4.
    또한 설명 : 자체는 임의의 문자와 일치하지 않지만, 그 범위를 "w /"한쪽은 정합 결과의 위치의 양쪽을 필요로 "/ B"와 "^"와 마찬가지로 "$", 다른 쪽은 비이며 "/ w" 그것은 범위.

    실시 예 4 : 발현 " / B 엔드 / B "매치에서 "주말 ENDFOR, 최종" , 매칭 결과는 성공, 매칭 컨텐츠는 "끝", 유사한 위치 15에서 시작, 끝 18.

 

욕심 아닌 욕심 모드

탐욕 모드 : 많은 경기로, 성공의 경우와 일치합니다.

비 탐욕 모드 : 기호 일치의 수의 특별한 수정에서 다음 번호를 추가합니다 "?". 성공적으로 일치 할 때, 일치하거나 가능한 한 적게 일치하지 않습니다.

역방향 기준 / 1, / 2, ...

참조 방법 : "/"를 더한 수

어느 왼쪽 괄호 쌍 "("첫 번째, 첫 번째 숫자에 이런 종류의 것을.

 

 

긍정적 인 사전 검색

특수 기호 "^", "$", "/ b"를, 그들은 모두 한 가지 공통점 : 그들은 자신의 모든 문자를 일치하지 않는,하지만 "두 문자열"의 "문자 사이의 간격"또는 추가 조건. 미래에이 개념을 이해하기 위해서, 우리는 또 다른 추가 조건 "2"또는 "격차"더 유연한 표현을 소개하는 것을 계속한다.

    "(= xxxxx는?)": 긍정적는 검색 사전 "(xxxxx는?!)"

    형식 : "(? = XXXXX)" , 문자열이, 그것이 "격차"에 위치되거나 일치 "이" 슬릿의 우측이 발현 xxxxx는이 부분에 일치 할 수 있도록 : 단, 그와. 이 틈에이 추가 조건으로 만 여기에 있기 때문에, 그래서 정말 격차 후 문자와 일치하는 식의 뒷면에 영향을주지 않습니다. 이것은 "/ B"유사 자체는 모든 문자와 일치하지 않습니다. 전 "/ b"를 문자 이후의 격차가 조금 판결로 촬영 어디서 실제 경기에 발현 다시 영향을주지 않습니다.

    예 1 : 표현 " 윈도우 (? = NT | XP ) "일치에서 "윈도우 98, 윈도우 NT, 윈도우 2000은" 만 "윈도우"에서 "Windows NT를"일치, 다른 "윈도우"라는 단어 아니다 그것은 일치합니다.

    실시 예 2 : 발현 " ( / W ) ( ? (= . / 1 . / 1 . / 1 ) ( . / 1 ) ) + "문자열 일치 "당신은 처음 7에 일치시킬 수 9 "9", "F"처음 네 (6)과 일치 할 수있을 것입니다. 이 일치되기 전에 마지막 부분이 떠나, 숫자를 반복 4 번이 표현에 솔루션을 읽을 수 있습니다. 물론, 쓸 수있는이 표현은,이 목적은 데모 용입니다.

    형식 : 격차의 오른쪽 표현식의이 부분을 xxxxx는 일치하지 않아야합니다 "(?! xxxxx는)".

    실시 예 3 : 식 " ( ?! ( / B STOP / B ) . ) + " "fdjka ljfdl STOP fjdsla FDJ가"일치 문자열이없는 경우, "정지"앞에 위치 된 처음부터 일치한다 "STOP "다음 전체 문자열을 일치합니다.

    예를 들어 패턴 "하면 않는 (?! / W ) "일치하는 문자열이 "완료, 강아지을" 만 "할"일치시킬 수 있습니다. 이 섹션의 예 "(?! / W)"의 사용 뒤에 "수행"및 "/ b"를 사용 효과와 동일하다.

 

Lookbehind

Lookbehind : "(? <= XXXXX) ", "(<XXXXX?!)"
    개념과 두 가지 형식이 유사, lookbehind 요구 조건은 앞으로 사전 검색 : 격차 "왼쪽 측면 ", 두 가지 형식이 일치 할 수 있도록해야하며 오히려 올바른 판단보다는, 지정된 표현식과 일치 할 수 없습니다해야합니다. 그리고 "긍정적 인 사전 검색"동일합니다 : 그들은 격차 자체가 모든 문자를 일치하지 않는 추가 조건에 있습니다.
    실시 예 5 : 식 " (<=? / D {4}. ) / D + (=? / D {4}. ) ", "1234567890123456"매치에서 4를 제외한 네 자리와 제 자리수 일치 중간체 8 자리.

 

게시 18 개 원래 기사 · 원의 찬양 (16) · 전망 390 000 +

추천

출처blog.csdn.net/f_zongjian/article/details/5717436