正規表現

正規表現オブジェクト

 var re = new RegExp('a');
 var re = /a/;                // 上の構文糖 
 console.log(re.test('abc')); // true
 console.log(re.exec('abc')); // "a"

なお、文字列リテラル('a')では\はエスケープされるので、例えばnew RegExp('\\d')のように\を重ねる事。正規表現リテラル(/a/)では重ねなくて良い。

"文字列".search()

ポジションを取り出す。

 console.log("123abc456".search(/a/)); // 3
 console.log("123abc456".search('x')); // -1

"文字列".match()

マッチした文字列を取り出す。

通常

 console.log("123abc456".match("[a-z]")) // "a"

gスイッチ付き

 console.log("123abc456".match("[a-z]", "g")) // ["a", "b", "c"]

REGEX.exec()

マッチした文字列を取り出す。

通常

 var re = /[a-z]/;
 console.log(re.exec("123abc456")); // "a"
 console.log(re.exec("123abc456")); // "a"

gスイッチ付き

 var reg = /[a-z]/g;
 console.log(reg.exec("123abc456")); // "a"
 console.log(reg.exec("123abc456")); // "b"
 console.log(reg.exec("123abc456")); // "c"
 console.log(reg.exec("123abc456")); // null

"文字列".replace()

文字列を置換する。

 console.log("123abc456".replace(/\d+/,'X'));  // "Xabc456"
 console.log("123abc456".replace(/\d+/g,'X')); // "XabcX" 
 console.log(
  "123abc456".replace(/[a-z]/g, function (val,pos) {
     return "[" + val + ":" + pos + "]";
   })
 );
 // 123[a:3][b:4][c:5]456

split()

 console.log("a,b:c,,d".split(/[,:]/)); // 他のブラウザ["a", "b", "c", "", "d"]
                                        // IE          ["a", "b", "c", "d"]

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS