정규표현식 사용시 슬래시 or RegExp 객체를 사용합니다.
1 2 | var pattern = /a/; var pattern = new RegExp( 'a' ); |
정규식 메소드 사용
1 2 3 4 5 6 7 | //RegExp.exec(); pattern.exec( 'abcdef' ); // ["a"] pattern.exec( 'bcdefg' ); // null //RegExp.test() pattern.test( 'abcdef' ); // true pattern.test( 'bcdefg' ); // false |
문자열 메소드 사용
1 2 3 | //'abcdef'.match(pattern); // ["a"] 'bcdefg' .match(pattern); // null 'abcdef' .replace(pattern, 'A' ); // Abcdef |
Flag
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | //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"] |
캡쳐
1 2 3 4 5 | <p> var pattern = /(\w+)\s(\w+)/; var str = "My superman" ; var result = str.replace(pattern, "$2, $1" ); console.log(result); //superman My </p> |
치환
1 2 3 4 5 6 7 8 | var urlPattern = /\b(?:https?):\/\/[a-z0-9-+&@ #\/%?=~_|!:,.;]*/i; var result = content.replace(urlPattern, function (url){ return "<a href=" " + url + " ">" + url + "</a>" ; }); console.log(result); |