정규표현(A Regular expression)은 문자 패턴을 설명하는 객체이다. 정규표현을 사용하면 문자열을 검색할 때, 패턴을 사용해 문자열을 검색할 수 있다. 단순한 패턴은 하나의 문자이고, 좀 더 완벽한 패턴은 여러 개의 문자열로 구성되어 있으며 완벽한 패턴을 사용하면 파싱(parsing), 포맷 점검 등을 대신할 수 있다. 정규표현은 패턴 매칭과 "Search-and-replace" 함수를 사용하면 더욱 강력하게 사용될 수 있다.
정규표현객체 생성방법
var txt = new RegExp(pattern, modifiers);
또는 단순하게
var txt = /pattern/modifiers;
정규표현 객체를 생성할 때는 파라미터로 패턴과 수식어를 전달한다. 패턴은 비교할 문자열이며 수식어구는 옵션과 비슷하다.
RegExp modifiers(수식어구)
수식어구를 사용해 대소문자 구분(case-insensitive)와 전역 검색을 옵션을 부여할 수 있다.
수식어구 |
설 명 |
i |
대소문자를 구분하지 않고 같은 문자열을 반환한다.(맨처음 나타나는 문자열) |
g |
모든 문자열을 검색해 일치하는 문자열 모두를 반환한다. |
수식어구 사용 예)
var str = "Visit HOME, come back home";
var patt = /home/i;
document.write( str.match( patt ) );
결과) HOME
두 번째 예제) 문자열 전체를 검색해 같은 문자열을 반환한다.
str = "Is this all there is?";
patt = /is/g;
document.write( str.match( patt ) );
세 번째 예제) 문자열 전체를 매칭시키며 대소문자를 구분하지 않고 검색한다.
str = "Is this all there is?";
patt = /is/gi;
document.write( str.match( patt ) );
RegExp 객체의 메소드
메소드 |
설 명 |
test(String str) |
파라미터로 전달받은 str문자열을 패턴과 비교해 일치하는지 여부를 반환(참,거짓) |
exec(String str) |
파라미터로 전달받은 str문자열을 패턴과 비교해 일치하는 텍스트를 반환한다. 만약, 매칭되는 것을 찾을 수 없다면 null를 반환한다. |
RegExp 객체의 메소드 사용 예제
test() 메소드 예제)
patt = new RegExp("e");
document.write( patt.test( "The best things in life are free" ) );
결과)
exec() 메소드
patt = new RegExp( "e" );
document.write( patt.exec( "The best things in life are free" ) );
결과) e
'Java Script & DOM > Java Script ' 카테고리의 다른 글
방문자의 브라우저 정보 탐색: Navigator 객체 (0) | 2010.12.16 |
---|---|
정규표현(Regular Expression) 패턴(Pattern) 지정 방법 (0) | 2010.12.15 |
자바 스크립트의 배열 객체(Array) (0) | 2010.12.15 |
자바스크립트의 날짜 객체(Date) (0) | 2010.12.15 |
자바스크립트 함수 사용시 주의점 (0) | 2010.12.08 |