.*? 과. * 의 차이
1654 단어 이동 웹
기본 문법
기호.
사용법
.
"\ r" 를 제외 한 모든 문자 와 일치 합 니 다."\ r" 를 포함 한 모든 문자 와 일치 하려 면 "[\ s \ \ S]" 와 같은 모드 를 사용 하 십시오.
?
앞의 하위 표현 식 과 0 에서 1 번 일치 합 니 다.
*
앞의 하위 표현 식 과 일치 하 는 사람 임 의 회
+
앞의 하위 표현 식 과 한 번 또는 여러 번 일치 합 니 다 (1 번 이상)
게 으 름 매 칭
표현 식. * 의 뜻 은 이해 하기 쉽 습 니 다. 한 글자 가 임 의적 으로 일치 하 는 것, 즉 탐욕 이 일치 하 는 것 입 니 다. 표현 식. *? 조건 을 만족 시 키 는 경우 에 한 번 만 일치 하 는 것, 즉 게 으 름 이 일치 하 는 것 입 니 다.
이것 은 무슨 뜻 입 니까? 우 리 는 예 를 들 어 설명 합 니 다.
var str = 'Anna is {age} years old,Bob is {age} years old too';
var expr = /{.*?}/g;
console.log(str.replace(expr, '13'));
명령 행 출력: Anna is 13 살, Bob is 13 살 too
이 를 통 해 알 수 있 듯 이 게 으 름 모델 에서 조건 을 만족 시 키 면 뒤로 일치 하지 않 고 다음은 탐욕 모델 이다.
var str = 'Anna is {age} years old,Bob is {age} years old too';
var expr = /{.*}/g;
console.log(str.replace(expr, '13'));
명령 행 출력: Anna is 13 years old too
중간 에 만족 하 는 모든 조건 이 바 뀌 었 다.
주의 하 다.
. + * 및. * + 와 같은 표현 식 은 잘못 되 었 습 니 다. 명령 줄 이 잘못 되 었 습 니 다. 탐욕 이 일치 하 기 를 원한 다 면 바로. * 또는. + 이면 됩 니 다.