特定文字列の存在確認
javascriptで特定文字列の存在確認をするだけなら、速度的にtest()メゾットを使うのいいようです。
返り値はboolean
あるパターンがある文字列内で見つかるかどうか調べたいときは、 test() を使用してください。
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/RegExp/test
ただ注意が必要で、正規表現がグローバルフラグを持ってるかどうかで挙動が変わります。
lastIndexが加算されるので、繰り返しtest()メゾッドを利用する場合に、検索位置が変わりますので注意が必要です。
regex がグローバルフラグを持つ場合、 test() は regex が所有する lastIndex の値を加算します。その後に続けて test() を呼ぶと、 lastIndex から続く str の 部分文字列を検索します (exec() も同様に lastIndex プロパティの値を加算します)。注目すべきは、別な文字列で検索しても lastIndex がリセットされないことです。
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/String/match
keyupイベントで、文字列のチェックをしていたときに、
正規表現にマッチする文字列があるにも関わらず、返り値がtrue/falseを繰り返すということが起こり
おかしいと思い調べたところ上記の仕様を知りました。