정규식
정규식 - 기본적인 것 참고하기.
알 수 없는 사용자
2011. 11. 17. 14:03
문자열을 다루자.
다루는 애들은 숫자, 문자, 공백(space나 tap), 줄바꿈 등이 있지만 기본적으로 앞의 3가지를 잘 알아둔다.
. (point)은 숫자, 문자 종류 가리지 않고 하나를 가리킨다. (줄바꿈 제외)
\d는 숫자 하나.
\w는 문자
\s는 공백을 가리킨다.
{ } 안에는 숫자만 들어가는데
\d{2} 라면 숫자 2개를 집어낸다.
\d{1,2}이면 1 or 2
\d{2, }이면 2개 이상 모두.
[ ] 는 찾으려는 문자의 범위를 구체화시켜줘용. 문자열과 헷갈리지 말자. 이건 1개의 character를 대상으로 하니까. [ ] 뒤에 { } 써도 it works ex:[a-z]{2}
[abc] 는 a,b,c중 걸리는거 잡는다.
[a-z] 소문자 a부터 z까지. \w와 같은 의미.
[0-9] 숫자 모두. \d
+는 1부터
*는 0부터 그 뒤를 다 잡는다.
근데 이 뒤에 ?가 붙으면 ?뒤에 있는 애가 나오면 끝. 애네들은 +,*와 같이 쓸 경우 세트라고 보면 된다. ex:<li.*?>
^는 줄바꿈 후 문장 첫번째 지정해주고 ex:^a
$는 문장의 끝이다. ex:a$
^는 [ ] 속에 들어가면 not의 의미로 변한다.
만약, [^a-z]이면 a-z가 아닌 것만을 잡는다. 이건 문자만을 집는다.
만약에 문자열에서 골라낸다면 ?!를 쓸 수 있다. ex: class="piclist"(?!.*?height)라고 쓰면 class는 piclist인데 그 뒤에 height가 아닌 모든것을 찾아낸다.
( ) 안에 들어가는 것은 replace를 하기위해 값을 저장해둔다.