JavaScript의 정규 표현식 실제 응용 상세 정보
3629 단어 javascript정규 표현식
1. 기초 문법:
첫 번째: 글꼴 구문
var expression=/pattern/flags;
두 번째: RegExp 구조 함수 구문
var pattern = /\w/gi; //
var pattern = new RegExp('\\w', 'gi');// ,
여기서 주의점은 정규 표현식이 동적이라면 두 번째만 선택할 수 있다는 것이다.그중에 플래그는 3개의 로고가 있어요.
g: 첫 번째 일치 항목을 발견할 때 멈추지 않고 모든 문자열에 적용되는 전역 모드를 나타낸다.
i: 대소문자 모드를 구분하지 않습니다. 즉, 일치하는 항목을 정할 때 모드와 문자열의 대소문자를 무시합니다.
m: 여러 줄 모드를 표시합니다. 즉, 한 줄의 텍스트 끝에 도달했을 때 다음 줄에 모드와 일치하는 항목이 있는지 계속 찾습니다.
물론 다른 플래그도 있는데, 사용한 것은 극히 적고, 너무 많이 논술하지 않는다.
위의\w가 무슨 뜻인지 잠시만요. 계속 아래를 보세요.
방법
주로 테스트 (), 검색 (), match (), Replace () 가 있습니다.물론 또 다른 많은 방법이 있는데, 논술하지 않으면, 어쨌든 매우 적게 쓰인다.
1. test() 방법의 사용
어떤 문자열에 해당하는 문자열이 있는지 판단하기
2. search() 방법의 사용
해당 문자열이 처음 나타나는 색인 위치를 검색하고 찾을 수 없으면 -1 반환
3. match() 방법의 사용
일치하는 그룹 되돌리기
4. Replace () 방법의 사용, 이것은 여전히 매우 많이 사용된다
해당 문자열 일치 후 다른 문자열로 교체
3. 일치 표현식과 실전
1. 단언:
단언이란 어떤 조건하에서 일치하는 것을 나타내는 것이다.어쨌든, 개념이 좀 복잡하니, 바로 다음 문장을 보아라.내가 천천히 계속할게.
문자
묘사
^
시작 일치
$
일치 끝
\b
일치하는 단어의 경계
\B
단어가 아닌 경계 일치
예를 들다
문자열을 일치시키려고 합니다. 시작부터 끝까지 dog입니다. 대소문자를 무시합니다.
var pattern = /^dog$/i;//
console.log(pattern.test('dog'));//true
console.log(pattern.test('sdfdog'));//false
console.log(pattern.test('dog56'));//false
console.log(pattern.test('dOG'));//true
var pattern = /\b\w+/g;// , +, , 1
console.log('Hello World'.match(pattern));// ['Hello','World'], match , 。
여기서\b는 일치하는 단어의 경계이고\B는 일치하지 않는 단어의 경계입니다.소문자 하나, 대문자 하나, 대문자 하나는 반의이다.그럼 내가 더 말할 필요 없겠네.그리고 다음 단어의 경계는 아마 많은 사람들이 단어의 경계를 잘 모를 것이다
제가 좀 설명해 드릴게요. 예를 들면 Hello World 단어 경계가 네 개예요. 각각 H위치, o위치, W위치, d위치예요.
2, 문자 클래스:
메타문자
묘사
.
줄 바꿈과 줄 끝자를 제외한 단일 문자 찾기
\w
[A-Za-z0-9_] 와 같은 단어 문자 찾기
\W
단어가 아닌 문자를 찾습니다. [^A-Za-z0-9_]
아래의 반의는 더 이상 나열되지 않는다.
\d
[0-9]에 해당하는 숫자 찾기
\s
빈 문자 찾기
\0
NULL 문자 찾기
줄 바꿈 찾기
\f
페이지 바꾸기 찾기
\r
리턴 문자 찾기
\t
탭 찾기
\v
수직 탭 찾기
3. 범위:
문자
묘사
[abc]
a, b, c의 임의의 문자와 일치
[^abc]
일치는 a, b, c의 임의의 문자가 아니다
[0-9]
0-9 임의의 범위의 숫자를 일치시키고, 같은 이치로 [a-z] 임의의 범위의 문자를 일치시킨다
[a-z]
a에서 z 사이의 임의의 문자와 일치
x|y
x 또는 y 일치
4. 양사:
문자
묘사
n+
하나 이상의 문자열을 포함하는 문자열 일치
n*
0 개 이상의 n을 포함하는 문자열 일치
n?
0개 또는 n을 포함하는 문자열 일치
n{x}
n이 포함된 문자열 일치
n{x,y}
최소 x 개, 최대 y 개의 문자열 일치
넓히다
10-36 사이의 숫자 일치
var pattern = /1[2-9]|[2-3][0-9]|4[0-6]/;//12-46
console.log(pattern.test(11));//false
console.log(pattern.test(12));//true
console.log(pattern.test(20));//true
console.log(pattern.test(36));//true
console.log(pattern.test(46));//true
console.log(pattern.test(47));//false
'Hello, World!Hello의 Hello를 Welcome로 교체합니다.여기에서 주로 Replace 방법이 정규에서 사용되는 것을 강조한다. 왜냐하면 이것은 실제에서 사용하는 것이 매우 많기 때문이다.뒤에 있는 flags의 g를 더하면 더하지 않는 것과 큰 차이가 있다.
var pattern = /Hello/g;
var oldString = 'Hello,World!Hello';
var newString = oldString.replace(pattern, 'Welcome');
console.log(newString);//Welcome,World!Welcome
총결산
JavaScript의 정규 표현식에 대한 실제 응용에 관한 이 글을 소개합니다. 더 많은 JavaScript 정규 표현식 내용은 저희 이전의 글을 검색하거나 아래의 관련 글을 계속 훑어보십시오. 앞으로 많은 응원 부탁드립니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
개별 마크다운 블로그 페이지 만들기 - 13부이를 통해 개별 마크다운 기반 블로그 게시물 작성을 시작할 수 있습니다! 이 기사를 따르려면 을 시작점으로 사용하십시오. blog 페이지 디렉토리에 동적 페이지를 생성하여 시작할 수 있습니다. 이 파일[slug].j...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.