정규식 사용팁

황제낙엽 2008.07.24 10:26 조회 수 : 19 추천:174

sitelink1  
sitelink2  
sitelink3  
sitelink4  
sitelink5  
sitelink6  

1. s 의 의미
대충 대충 정규식을 학습하면 쉽게 지나쳐버릴 부분인데, 나도 착각을 하고 있었다.
s는 단지 스페이스 한 문자만을 의미하는게 아니라 단어를 구분짓는 스페이스, 탭, 라인피드 등의 모든 공백 문자를 대표한다.
s -> [tnrf]
w -> [A-Z0-9]

고로 s 하나 사용하면 n, t 등은 더 적어넣을 필요 없다.

2. 검색 문자열 중간에 줄바꿈(n) 기호가 존재할 경우의 처리
사실 문제점이라기 보다는 정규식 처리에 있어서의 난해한 부분인데, 문자열 중간에 줄바꿈(n) 기호가 존재 할 경우 딱히 정해진 API라던가 이를 처리하기 위한 정해진 룰이 존재하지는 않는 것 같다.
예를 들면, <Script>int i = 0; n alert(i);</Script> 와 같은 코드에서  태그 사이의 문자열을 추출하고 싶을때 이것을 어떻게 추출할 것인가.
"([<]Script[>])(.|n)*([<]/Script[>])"로 해결해 보려 했지만 대실패였다. ㅜ_ㅜ 나중에 겨우 겨우 찾아냈는데
"([<]Script[>])([^<]*)([<]/Script[>])" <- 이렇게 하면 추출된다.