Visual Studio Search : 특정 단어가 앞에 오는 경우는 검색되지 않지만 단어 찾기 [중복]
예를 들어, Visual Studio의 텍스트 검색을 사용하여 텍스트 파일에서 "hot dog"의 "dog"이 아닌 "dog"의 모든 인스턴스를 찾으려고합니다. 나는 비슷한 질문을 발견하고 그 대답을 시도했습니다.
\w+(?<!hot) dog
"핫도그"는 제외되지만 문제는 다른 경우에 가능한 모든 조합과 일치한다는 것입니다. 즉, "사냥개"의 경우 다음 인스턴스로 이동하려면 "다음 찾기"를 7 번 클릭해야합니다. VS는 해당 인스턴스의 모든 다음 부분에 대해 중지되기 때문입니다.
hunting dog
unting dog
nting dog
ting dog
ing dog
ng dog
g dog
또한 앞에 아무것도없는 경우 (첫 번째 단어) 단어와 일치하지 않습니다. 표현은 어떻게 바꾸나요?
답변
Jossnix
질문은 완전히 명확하지 않습니다. "개"라는 단어를 찾으려면 검색에서 해당 단어 만 지정하면됩니다. 이전 단어 + dog를 찾으려면 다음을 사용하십시오.
\b\w+\s+dog
"hot"이라는 단어를 제외하려면
(?<!hot )\bdog
MichałTurczyn
패턴 시도 (?!<hot )dog
패턴 설명 :
(?!<hot )
-부정적인 룩백-선행이 아닌 것을 주장 hot
dog
- dog
말 그대로 일치
데모