vi에서 지원하는 old영역 정규표현식은 아래와 같습니다. ※ vim에서는 좀더 많은 정규표현식을 지원합니다.
표현식
기능
예제코드
변경케이스
.
문자 하나
:s/t.e/XXX/
the -> XXX there -> XXXer
*
0개이상 문자
:s/t*e/XXX/
the -> XXX test -> XXXst
^
시작
:s/^The/XXX/
The test -> XXX test test The -> test The
$
끝
:s/$The/XXX/
The test -> The test test The -> test XXX
\
escape 문자
:s/\[test\]/XXX/
[test] -> XXX
[]
대괄호 안의 문자중 하나
:s/[a-z]*1/XXX/
test1 -> XXX
\{n,m\}
문자 반복횟수가 n ~ m개인 가능한 많은 문자와 매칭 \{n,\}\{,m\} 과 같이도 사용 가능
:s/b\{2,3\}/x/g
ababbabbba -> abaxxaxxxa
\{-n,m\}
문자 반복횟수가 n ~ m개인 가능한 적은 문자와 매칭 \{n,\}\{,m\} 과 같이도 사용 가능
:s/b\{2,3\}/x/g
ababbabbba -> abaxxaxxxa
\(\)
괄호안의 패턴을 1~9까지 버퍼에 저장, new영역에서 사용
:s/\(aaa\)\(bbb\)/\2\1/
aaabbb -> bbbaaa
\<\>
문자의 앞뒤를 매칭 시킴
:s/\<The\>/XXX/
The There -> XXX There
\{n,m\}과 \{-n,m\}의 차이는 가능한 많이 / 가능한 적게 적용하는 것입니다.
예를 들어
x xx xxx xxxx xxxxx
와 같은 문장을 치환 하면 아래와 같습니다. :s/x\{2,\}/y/ -> x y y y y :s/x\{-2,\}/y/ -> x y yx yy yyx
웹 작업시 내부적인 통신을 위해 iframe 숨겨서 사용하는 경우가 있습니다.
이 때 iframe은 보여선 안되기 때문에 width=0, height=0으로 설정하는데 그럴 경우 크롬에서 아래 그림과 같이 여백으로 떠버리는 경우가 있습니다.
그래서 추가하는 방법이 style에 display:none;을 추가하게 되는데 이 역시 다른 브라우저에서 문제를 일으킬 소지가 있습니다.
The iframes used to load test requests all have style=”display:none”.
Firefox does not compute styles or perform certain other rendering tasks in elements that are display:none or are children of an element with display:none.
Therefore, there are numerous test failures that are false negatives because the behavior in question isn’t being triggered.
This problem can be easily resolved by using style=”visibility:hidden” instead.
display:none;으로 할 경우 iframe이 정상 로딩 되지 않을수 있다는 점인데, 이를 해결하기 위해 display:none; 대신 visibility:hidden;을 사용하면 됩니다.