Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Регулярные выражения, как пронумеровать совпавшие группы (https://javascript.ru/forum/misc/25357-regulyarnye-vyrazheniya-kak-pronumerovat-sovpavshie-gruppy.html)

Casufi 02.02.2012 19:47

Регулярные выражения, как пронумеровать совпавшие группы
 
Есть строка
var mystr = '(\d)+ болт (\d)+ гайка';
есть регулярное выражение которое находит строки '(\d)+
var groupre = /(\(\\d\)\+)/g;
нужно заменить найденные группы на $1...$n по номеру найденной группы в строке.
Первое что приходит в голову - цикл по mystr.match(groupre)
Поделитесь пожалуйста своими решениями.

рони 02.02.2012 20:12

Casufi,
var mystr = '(\d)+ болт (\d)+ гайка';
var groupre = /\(d\)\+/g;
var n = 0 ;
mystr = mystr.replace(groupre,function ()
{
  return '$'+n++
})
alert(mystr)


Часовой пояс GMT +3, время: 12:31.