예전에 본것 같은데 다시 찾으려니 못찾겟네요..
vim에서 찾기할때
각 라인에서 2번째로 나오는 패턴만 찾으려면 어떻게 해야하나요?
some text aa bb aa dd
에서 두번째 aa를 다른 단어로 바꾸고 싶습니다..
:%s/\(aa\)\(.\{-}\)\1/\1\2cc/g 하니 되네요.(두 번째 aa를 cc로 바꿈)
공백으로 둘러싸인 임의의 두번째 단어 바꾸기는... :%s/\(^\| \)\([0-9A-Za-z]\+\)\( .\{-}\)\(\2\)\( \|$\)/\1\2\3cc\5/g (두 번째 단어를 'cc'로 바꿈)
=================================== 행동할 때 열정은 자라난다.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
vim 7.1 기준으로...
:%s/\(aa\)\(.\{-}\)\1/\1\2cc/g 하니 되네요.(두 번째 aa를 cc로 바꿈)
공백으로 둘러싸인 임의의 두번째 단어 바꾸기는...
:%s/\(^\| \)\([0-9A-Za-z]\+\)\( .\{-}\)\(\2\)\( \|$\)/\1\2\3cc\5/g (두 번째 단어를 'cc'로 바꿈)
===================================
행동할 때 열정은 자라난다.
댓글 달기