vim: 바꾸기 명령에서 검색 문자열을 사용합니다.

vim: 바꾸기 명령에서 검색 문자열을 사용합니다.

나는 종종 vim /search 명령을 사용하여 정규식을 확인합니다(단지 일치하는 내용을 확인하기 위해). 그런 다음 일반적으로 :%s검색의 정규식을 바꿀 문자열로 사용하는 바꾸기 명령을 사용합니다. 예를 들어 먼저 다음과 같은 문자열을 찾습니다.

/TP-\(\d\{5\}\)-DD-\d\{3\}

내가 원하는 것을 정확히 수행하므로 다음을 바꿉니다.

:%s/TP-\(\d\{5\}\)-DD-\d\{3\}/\1/g

하지만 여기서 전체 정규식을 다시 작성해야 합니다. 일반적으로 이 정규식은 훨씬 길기 때문에 해결책을 찾고 있습니다.

이 검색 패턴을 바꾸기 명령에 직접 붙여넣을 수 있는 기존 바로가기 또는 vim 스크립트가 있습니까?

저는 gvim 없이 터미널에서 vim을 사용합니다.

답변1

일반적으로 빈 정규식은 이전에 입력한 정규식을 사용하는 것을 의미하므로 :%s//\1/g원하는 대로 수행해야 합니다.

답변2

과거 정규식 검색 및 Ex 명령을 보고 변경하는 또 다른 좋은 방법은 일반 모드에서 이러한 명령을 편집하는 것입니다. 이 모드에서는 복사 및 붙여넣기를 포함한 모든 vim 기능을 사용할 수 있습니다.

  • ?검색: 또는 /검색 대신 q/또는q?
  • Ex 명령의 경우 대신 :시도하십시오.q:
  • 이 모드를 종료하려면 다음을 사용하십시오.CtrlC

자세한 내용을 보려면 다음을 참조하세요.:help q:.

관련 정보