Я хочу извлечь как набор непрерывных слов, которые появляются в регулярном выражении с помощью javascript.
скажем, у меня есть строка str = "У меня есть тысяча сорок рупий, и у вас двадцать пять рупий";
var pattern = 'one|thousand|forty|twenty|five';
Я хочу, чтобы регулярное выражение извлекало "тысячу сорок" и "двадцать пять" вместе. Затем мне нужно преобразовать числовой эквивалент этих и заменить обратно.
То, что я пробовал -
var regexp = new RegExp('('+pattern+')+', "g");
str.replace(regexp, function (all, matched) {
alert (matched);
});
Но это даст индивидуальное слово.
При разработке решения учитывайте "журнал ((одна тысяча сорок) строк +sin (двадцать))" с любой сложностью.
Я могу выполнить свою работу с помощью кода ниже. Оно работает..!!! Поэтому я отвечаю на свой вопрос.
Спасибо за помощь.
var regexp = new RegExp('((('+pattern+')\\s?)+)', "g");
str.replace(regexp, function (all, matched) {
alert (matched);
});
var pattern = /\b(?:one thousand forty|twenty(?: five)?)\b/g;
Смотрите regex101.com/r/fM9bD2