정규표현식 사용시 슬래시 or RegExp 객체를 사용합니다.
var pattern = /a/; var pattern = new RegExp('a');
정규식 메소드 사용
//RegExp.exec(); pattern.exec('abcdef'); // ["a"] pattern.exec('bcdefg'); // null //RegExp.test() pattern.test('abcdef'); // true pattern.test('bcdefg'); // false
문자열 메소드 사용
//'abcdef'.match(pattern); // ["a"] 'bcdefg'.match(pattern); // null 'abcdef'.replace(pattern, 'A'); // Abcdef
Flag
//i(ignore) - 대소문자 무시 var pattern = /a/; var patterni = /a/i; "Abcde".match(pattern); // null "Abcde".match(patterni); // ["A"] // g var pattern = /a/; var patterng = /a/g; "abcde".match(pattern); //["a"] "abcdea".match(patterng); //["a","a"] var pattern = /a/; var patterng = /a/ig; "aAbcdeaA".match(patterng); //["a","A","a","A"]
캡쳐
var pattern = /(\w+)\s(\w+)/; var str = "My superman"; var result = str.replace(pattern, "$2, $1"); console.log(result);//superman My
치환
var urlPattern = /\b(?:https?):\/\/[a-z0-9-+&@#\/%?=~_|!:,.;]*/i; var content = '티스토리 : http://tokigui.tistory.com/ 입니다.'; content += '네이버블로그: http://blog.naver.com/tokigui 입니다.'; var result = content.replace(urlPattern, function(url){ return "" + url + ""; }); console.log(result);