vi 의 바꾸기 명령으로 대문자를 소문자로 바꾸거나 소문자를 대문자로 바꾸는 방법을 알아보자.
1. 대문자로 바꾸기
문서에서 xtmci.com 을 찾아 모두 XTMCI.COM 으로 바꾸어 보자.
:%s/\(xtmci\).\(com\)/\U\1.\2/gc
여기서 \1 은 첫번째 부표현식 (sub expression) 으로 xtmci 를 가리킨다. \2 는 두번째 부표현식으로 com 을 가리킨다. \U 는 뒤에 오는 문자들을 모두 대문자로 바꾼다.
아래 명령은 xtmci.com 을 XTMCI.com 으로 바꾼다.
:%s/\(xtmci\).\(com\)/\U\1.\e\2/gc
여기서 \e 는 대소문자 변환을 중단시킨다. 그래서 com 은 대문자로 바뀌지 않은 것이다. \e 대신 \E 를 사용해도 된다.
아래 명령은 xtmci.com 을 Xtmci.com 으로 바꾼다.
:%s/\(xtmci\).\(com\)/\u\1.\2/gc
여기서 \u 는 뒤에 오는 문자 하나만 대문자로 바꾼다. \e 나 \E 를 사용하지 않아도 나머지 문자들은 바뀌지 않는다.
아래 명령은 xtmci.com 을 xtmci.COM 으로 바꾼다.
:%s/\(xtmci\).\(com\)/\1.\U\2/gc
아래 명령은 xtmci.com 을 xtmci.Com 으로 바꾼다.
:%s/\(xtmci\).\(com\)/\1.\u\2/gc
2. 소문자로 바꾸기
소문자로 바꾸는 방법은 대문자로 바꾸는 방법과 비슷하다.
\U 대신 \L 을 쓰고 \u 대신 \l (소문자 엘) 을 쓴다는 점만 다르다.
XTMCI.COM 을 xTMCI.cOM 으로 바꾸어 보자.
:%s/\(XTMCI\).\(COM\)/\l\1.\l\2/gc
여기서 \l (소문자 엘) 은 뒤에 오는 문자 하나만 소문자로 바꾼다.