2010-05-29 5 views
8

다음은 시나리오입니다. 정규 표현식을 사용하고자하는 모든 종류의 쓰레기로 가득 찬 큰 파일이 있습니다. / 명령을 사용하여 강조 표시되는 내용을보고 완벽한 검색 패턴을 제안합니다.Vim에서 쓰는 정규식 패턴을 바꿀 때 검색 패턴을 기억하는 법?

이제 대체 할 패턴을 사용하고 싶습니다. 그래서 을 입력하기 시작합니다 : % s/ 그리고 패턴이 무엇인지 기억이 안납니다. 여기에 마지막 검색 패턴을 가져올 마법의 키보드 명령이 있습니까? 특히 복잡한 정규 표현식을 작성하는 경우 새 MacVim 윈도우를 열고 첫 번째 윈도우에서 버퍼로 정규 표현식을 입력 한 다음 대체 패턴을 쓸 때 Vim 윈도우에 다시 입력합니다. 그렇게하는 더 좋은 방법이 있어야합니다.

답변

10

Vim 팁은 substitute last search으로 나열되어 있으며 두 가지 방법 중 하나로 수행 할 수 있습니다.

: 빈 검색을 사용

  1. % S // 교체/g 검색 버퍼로부터 물질을 회수하기 위해 다음 R/Ctrl 키 + 눌러

  2. (/ - /을 bu를 나타내는 문자로 대체하여 다른 명명 된 버퍼를 사용할 수 있습니다 ffer).

+2

자진 답변을드립니다. 나는 실제로 대답을 찾는 데 어려움을 겪었습니다. 그리고 Meta는 자신의 질문에 대답하는 것이 좋습니다 - http://meta.stackexchange.com/questions/12513/should-i-not-answer-my-own-questions –

+1

둘 이상을 사용해야 할 경우 @ :'let b : tires_sifter = @ /'를 쓰레기의 한 종류에 사용하고': let b : pope_on_a_ropes_sifter = @ /'를 사용하면 변수를 유지하는 것이 유용 할 수있다. 저 엔티티의 인스턴스를 찾는 방법을 알아 냈습니다. 그것들을 사용하기 위해'exec' 줄을 만들거나'search()'(IIRC .. 어쩌면'matchadd') 함수를 사용하여 그들을'@ /'에 다시 할당함으로써 그들을 끌어 낸다. – intuited

4

은 현재의 검색 패턴을 포함하는 / 레지스터가있다, 그래서 당신은 <CTRL-R>/

1

또 다른 옵션을 입력하는 어떤로 (삽입 모드 또는 명령 행 중) 검색 패턴을 삽입 할 수 있습니다 : <CTRL-R>/으로 패턴을 입력 한 후 <CTRL-F>으로 명령 행을 편집하십시오.

: help cmdwin

관련 문제