Выразительный JavaScript.

Циклы по вхождениям.

Типичная задача – пройти по всем вхождениям шаблона в строку так, чтобы иметь доступ к объекту match в теле цикла, используя lastIndex и exec.

Var input = "Строчка с 3 числами в ней... 42 и 88.";

Var number = /\b(\d+)\b/g;

Var match;

While (match = number.exec(input)).

Console.log("Нашёл ", match[1], " на ", match.index);

// → Нашёл 3 на 10.

// Нашёл 42 на 29.

// Нашёл 88 на 34.

Используется тот факт, что значением присвоения является присваиваемое значение. Используя конструкцию match = re.exec(input) в качестве условия в цикле while, мы производим поиск в начале каждой итерации, сохраняем результат в переменной, и заканчиваем цикл, когда все совпадения найдены.