VIM은 사용자가 입력할 때 정규식 일치 항목을 확인합니다.

VIM은 사용자가 입력할 때 정규식 일치 항목을 확인합니다.

를 입력하면 /regex커서가 첫 번째 일치 항목으로 잠시 이동하고 모든 일치 항목이 강조 표시됩니다. 입력하면 업데이트됩니다. 교체를 준비할 때 이 동작이 발생할 수 있습니까? 예를 들어, 복잡한 정규 표현식을 작업할 때 :%s/\<regex\>/트리거를 당겨 모든 것을 변경하기 전에 무엇이 일치하는지 알고 싶습니다. 이를 수행할 수 있는 방법이 있습니까?

답변1

다음을 사용하여 검색어를 입력하세요./(또는?) 첫째, 정규식을 조정할 수 있습니다(incsearch를 사용하고 있으므로).

모든 것이 잘되면 사용할 수 있습니다더 일찍검색 항목에서 두 개의 구분 기호를 사용하여 대체 명령에서 패턴(방금 사용한 패턴)을 검색합니다.

/elephant                       " find the next elephant
:%s//rhino/gc                   " make then all rhinos!

물론 선택과 범위를 정상적으로 사용할 수 있습니다.

:1,15s,,cougar,g
:'<,'>s::tiger:

답변2

한 가지 옵션은 확인 플래그를 가질 수 있다는 것입니다 c.

:%s;regex;replacement;gc

:h s_flags:

[c] Confirm each substitution.  Vim highlights the matching string.  You can type:              
        'y'     to substitute this match
        'l'     to substitute this match and then quit ("last")
        'n'     to skip this match
        <Esc>   to quit substituting
        'a'     to substitute this and all remaining matches
        'q'     to quit substituting

grep또한 명령을 사용하여 필터링된 출력과 강조 표시된 원본 파일을 볼 수도 있습니다 .

:g/re/p또는:g/re/

답변3

/글쎄, 정규식이 무엇과 일치하는지 확인하는 쉬운 방법은 원하는 정규식으로 검색하는 것입니다. 입력하면 첫 번째 일치 항목으로 이동하여 태그를 지정합니다. 한번 시도해 보십시오. vim실망하지 않을 것입니다.

관련 정보