>  기사  >  웹 프론트엔드  >  JavaScript에서 Look Behind Assertion을 달성하는 방법은 무엇입니까?

JavaScript에서 Look Behind Assertion을 달성하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-08 20:23:02620검색

How to Achieve Look Behind Assertion in JavaScript?

JavaScript Regex: Look Behind Assertion의 대안

JavaScript에서 Look Behind Assertion(?)은 다음과 같습니다. 지원되지 않습니다. 이 어설션은 특정 조건 앞에 오는 패턴을 일치시키는 데 유용합니다. 그러나 JavaScript에서 동일한 결과를 얻을 수 있는 다른 방법이 있습니다.

한 가지 대안은 ^ 및 (?!) 패턴을 사용하는 것입니다. ^ 기호는 문자열의 시작 부분과 일치하는 반면 (?!)은 다음 표현식이 현재 위치와 일치하지 않는지 여부를 확인합니다. 예를 들어 다음 정규 표현식은 filename.js를 제외하고 .js로 끝나는 모든 문자열과 일치합니다.

^(?:(?!filename\.js$).)*\.js$

이 정규 표현식은 문자열의 각 문자를 명시적으로 검사하여 Look Behind 조건을 충족하지 않는지 확인합니다. .

ECMAScript 2018에 도입된 또 다른 간단한 대안은 다음을 사용하는 것입니다. regex:

^(?!.*filename\.js$).*\.js$

이 정규식은 . 표현식을 사용하여 모든 문자열과 일치시키고 (?!) 어설션을 사용하여 다음 표현식(.filename.js)이 일치하는지 확인합니다. $)는 현재 위치와 일치하지 않습니다. 이 대안은 모든 문자에서 조건을 확인할 필요가 없기 때문에 첫 번째 대안보다 더 효율적입니다.

위 내용은 JavaScript에서 Look Behind Assertion을 달성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.