var text = 'Я {самый|очень} плохой {доктор|кролик|сантехник} из статей про наследование, которому не составит труда {написать|сварганить| запостить} код для этого задания, в котором слова будут изменяться {быстро|мгновенно|рэндомно}';
var newText = text.replace(/\{(.+?)\}/img, function(tab, inTag) {
var words = inTag.split('|');
var random = Math.round(Math.random() * (words.length - 1));
return words[random];
});
alert(newText);
Ты имел ложное убеждение что все задание нужно решать регуляркой, тебя запутали).
Всю задачу нужно разбивать на куски, которые можно опсиать математикой ну или чем там) так и тут, НЕ НУЖНО стараться сделать все одним куском, НУЖНО стараться разбивать на куски)
1) выдрать из тегов текст
2) разделить его по разделителю
3) выдрать случайное слово из того что разделили
4) вставить это слово за место тега
И нужно уметь видеть эти куски.
НЕ НУЖНО БОЯТЬСЯ ЧТО КОМП БУДЕТ ТУПИТЬ ОТ КОЛИЧЕСТВА ЭТИХ КУСКОВ))) это МИФ