2
안녕의 내가이 문자열 있다고 가정 해 봅시다 :자바 스크립트 정규식 -의 부정 (:)
var text = "Jackie Chan | Jack Frost | Capt.Jack Sparrow"
내가 잭 프로스트를 제외한 모든 /Jack/
을 찾으려합니다.
나는 쉽게 ?!
를 사용하여이 작업을 수행 할 수 있지만,
text.match(/[^\s]*Jack[^\s]*(?!\sFrost)/g);
// Result: ['Jackie', 'Capt.Jack']
// I want the result to be ['Jackie Chan', 'Capt.Jack Sparrow']
그래서 나는 기본적으로
?:
의 부정을 필요로하는 성을 포함하지 않습니다. 그런 것이 있습니까?
다른 잭을 추가하면 일치하지 않기 때문에 (?:Chan|Sparrow)
을하고 싶지 않습니다.
감사
안녕 감사합니다. 마지막 부분'(?! \ s + Frost) \ s + \ S +'에 대해 더 자세히 설명 할 수 있습니까? 그룹'()'이 발견되지 않으면 무시합니까? – hrsetyono
예, lookeaheads는 "zero-width"이며 아무 것도 캡처하지 않습니다. – georg