음..이상하네요. 저는 잘 되거든요.
예를 들면 파일 속에 있는 모든
<a href=http://www.yahoo.com/test.html>test</a>
와 같은 문자열을
<a href=http://www.yahoo.com/blank.html>test</a>
로 바꾼 다는 것이지요?
문제 없이 잘되거든요.
잠시 설명을 해보면...
% s / (.*) / (.*.html) / 1 /blank.html / g
1 2 3 4 5 6 7 8 9 10 11
1 - 범위 (모든줄)
2 - substitute (변환)
3 - 구분자
4 - (.*) 모든 문자열을 그룹 1로
5 - URL 의 / 를 표시
6 - (.*.html) .html 로 끝나는 모든 문자열을 그룹 2로.
7 - 구분자
8 - 그룹 1
9 - /blank.html
10 - 구분자
11 - 모두 바꿈.
따라서...
http://www.yahoo.com/foo/bar.html 은 http://www.yahoo.com/foo 까지가 그룹1이 되고
bar.html 이 그룹 2가 되죠.
위의 정규표현식에 맞춰보면... (는 제외)
s / (http://www.yahoo.com/foo) / (bar.html) /
2 3 4 5 6 7
(http://www.yahoo.com/foo) /blank.html / g
8 9 10 11
이렇게 되겠죠.
제가 워낙 설명을 못해서 이해가 가셨을라나 모르겠네요.
정규표현식은 한번 배워두면 여러모로 편리하니 배워두면 좋죠.
아니면 제가 이해를 잘못했나요?
http://www.yahoo.com/test.html 이란걸 몽땅 blank.html 로??
그렇다면
%s/http.*.html/blank.html/g
이걸 쓰면 되고요..
: 답변 감사드립니다. ^^;;
:
: 음, 근데 저 정규표현식의 의미를 잘 .. ^^;;
:
: 해봤는데, 안 먹네염.. ㅜ.ㅜ
:
:
: 그리고 <a href=http://www.yahoo.co.kr/test.html>test</a>
:
: 저거 중에서 http://www.yahoo.co.kr/test.html 이것만 blank.html
: 로 바꾸고 싶어서요.
:
: 그래서 http로 시작하고 html로 끝나는 모든 문자열이라고 했던 거죠. ^^;
:
: : 파일 안에 모든
: :
: : http://www.yahoo.co.kr/dfdf.html : :
: : 과 같은 문자열을
: :
: : http://www.yahoo.co.kr/blank.html : :
: : 로 바꾸시려는 것인지? 그렇다면..
: :
: : :%s/(.*)/(.*.html)/1/blank.html/g
: :
: : 요렇게 하시면 됩니다.
: :
:
: --
: May the force be with you..
--
껌을 씹을 때는 조용히...