2013년 2월 25일 월요일

[JS] 정규표현식

정규표현식은 참 유용한 면이 많다. 문자열은 생각보다 많이 다루게되고 문자를 조작하거나 검색하는데 정규표현식이 굉장히 편리하다. 따라서 자바스크립트에서는 내장객체로써 정규표현식 객체를 제공한다.

생성 방법
1. var reg = /"문자열이나 패턴, 수량, 이스케이프 문자의 조합"/플래그;
2. var reg = new RegExp("문자열이나 패턴, 수량, 이스케이프 문자의 조합", "플래그");

메소드
exec()
- 정규표현식과 일치하는 문자열을 리턴

test()
- 정규표현식과 일치하는 문자열이 있는지 없는지를 나타냄(boolean)


match(regExp)
- 정규표현식과 일치하는 부분을 리턴


replace(regExp, replacement)
- 정규표현식과 일치하는 부분을 지정한 문자열로 치환

search(regExp)
- 정규표현식과 일치하는 부분의 인덱스를 반환

split(regExp)
- 정규표현식을 기준으로 문자열을 잘라 배열을 리턴

대체문자
$& : replace()를 사용할 때 일치한 문자열을 가리킴
$` : 일치하는 부분의 앞부분 문자열을 가리킴
$' : 일치하는 부분의 뒷부분 문자열을 가리킴
$1, $2, $3 : 그룹

플래그문자
g(Global) : 전역 매칭
m(Multiple) : 여러 줄 매칭
i(Ignore Caes) : 대소문자 구분 않음

앵커문자
^ABC : 맨 앞 문자가 ABC
ABC$ : 맨 뒤 문자가 ABC

메타문자
. : 아무문자
[abc] : 괄호 안의 글자
[^abc] : 괄호 안의 문자 제외
[a-z] : a부터 z까지만 입력
[A-Z] : A부터 Z까찌만 입력 ([A-Za-z]로도 쓰임)
[0-9] : 숫자만 입력
\d : 숫자
\D : 숫자 이외
\s : 공백문자
\S : 공백문자 이외
\w : 알파벳과 숫자로 된 문자
\W : 알파벳과 숫자로 된 문자 제외(특수문자)

수량문자
a+ : 하나이상
a* : 0개 또는 하나 이상(여러개)
a? : 0개 또는 1개
a{숫자} : 숫자에 매치(자리수)


댓글 없음:

댓글 쓰기