Лучшим эквивалентом preg_match_all из PHP в JS было бы использование функции exec (). Это также позволит вам захватывать группы, с помощью match () вы не сможете этого сделать.
Например, вы хотите захватить все время и число в скобках из переменной myString:
var myString = "10:30 am (15 left)11:00 am (15 left)11:30 am";
var pattern = /(\d{1,2}:\d{1,2}\s?[ap]m)\s\((\d+)/gi;
var match;
while (match = pattern.exec(myString)){
console.log('Match: "' + match[0] + '" first group: -> "' + match[1] + '" second group -> ' + match[2]);
}
Вывод будет:
Match: "10:30 am (15" first group: -> "10:30 am" second group -> 15
Match: "11:00 am (15" first group: -> "11:00 am" second group -> 15