javascriptの正規表現まわりのメソッドを整理

javascriptの正規表現まわりのメソッドを整理してみました

Regexp

  • test -> マッチしたら true or false を返す
  • exec -> マッチした結果が返る

String

  • search -> マッチしたらマッチしたインデックスを返す
  • match -> マッチした結果が返る

実行した結果がこちら

var re = /am/;
var str = 'sample string';

console.log( re.test(str) );
// true
console.log( re.exec(str) );
// ["am", index: 1, input: "sample string"]

console.log( str.search(re) );
// 1
console.log( str.match(re) );
// ["am", index: 1, input: "sample string"]

パターンマッチ演算子のgをつけてみます(globalのg)
g をつけると繰り返しマッチさせます

var re = /am/g;
var str = 'sample string sample';

console.log( re.test(str) );
// true
console.log( re.exec(str) );
// ["am", index: 15, input: "sample string sample"]

console.log( str.search(re) );
// 1
console.log( str.match(re) );
// ["am", "am"]

re.exec の index が最後のマッチの index が返ってきて、
str.matchがマッチした分が配列で返ってきています

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください