2012-09-13 2 views
1

RE에 익숙하지 않습니다. 나는정규식 negative look ahead

"The cat jump The cat ran The cat eat The dog jump The dog ran The dog eat". 

내가

"The cat ran" and "The dog ran". 

내가

"The(?!.*The).*jump" 

작동합니다 앞서 부정적인 모양을 사용하여이 RE 생각하고 싶지 다음 문자열을 가지고 있지만 그것은 아니다. 없어진 물건 있어요?

도와주세요.

+0

왜 부정적 예측이 필요합니까? 더 간단한 정규식''(cat | dog)은''잘 작동해야합니다. –

+0

사실입니다. 사실 내 실제 작업을 단순화하고있었습니다. 부정적인 시각으로 어떻게하면 좋을까요? – duvo

+1

regex 구문은 사용하는 방언에 따라 다릅니다. 아마도 표현식이 실행될 프로그래밍 언어 나 프로그램을 말해야 할 것입니다. – hugomg

답변

1

The를 포함하지 않는 문자열을 일치하는 표현을 할 것으로 보인다. 이 경우에 충분 게으른 (.*?) 한정사를 사용하는 것이

The(?:(?!The).)*jump 

주, 예를 들면 :

The.*?jump 

은 어쩌면이 작업 할 수있는 표현에하는 구조 같은 (?:(?!The).)* 수행 할 수 있습니다 당신의 원래 문제.

+0

니스! 첫 번째 구조는 아름답게 작동했습니다. 두 번째는 그렇지 않았습니다. 고맙습니다. – duvo

1

다음과 같이 하시겠습니까?

The \w* ran