グローバルフラグと大文字と小文字を区別しないフラグを使用する場合、この正規表現の問題は何ですか?クエリはユーザーが生成した入力です。結果は[true、true]になります。
var query = 'Foo B';
var re = new RegExp(query, 'gi');
var result = [];
result.push(re.test('Foo Bar'));
result.push(re.test('Foo Bar'));
// result will be [true, false]
var reg = /^a$/g;
for(i = 0; i++ < 10;)
console.log(reg.test("a"));
re
です。