Насколько я понимаю, все три приведенные ниже строки должны возвращать МАССИВ с двумя результатами. Тем не менее RegExp вернет только 1 результат, независимо от того, сколько раз регулярное выражение повторяется в строке.
Может кто-нибудь объяснить, почему? И, возможно, предложите, как я могу заставить RegExp давать мне глобальные результаты?
//INTPUT:
console.log(new RegExp("New York", "gi").exec("New York New York"));
//OUTPUT:
["New York"]
//INTPUT:
console.log(new RegExp(/New York/gi).exec("New York New York"));
//OUTPUT:
["New York"]
//INTPUT:
console.log("New York New York".match(/New York/gi));
//OUTPUT:
["New York", "New York"]
(' New York New York ').match(/ New York /gi)
, это принесет только 1 результат (как и ожидалось), и я не могу придумать лучшего способа обойти это (когда это необходимо) кроме перебора! :( - person cregox   schedule 19.02.2017