LINUX.ORG.RU

[JavaScript] Помогите с регулярным выражением.

 


0

0

Добрый день. Помогите, пожалуйста, кто-нибудь с регулярным выражением на JS.

msg_text = msg_text.replace(new RegExp('<([0-9]*)>{1,3}','g'), '<a href=\"javascript:top.frames[5].PutSmile(\'$1\');\"><img border=\"0\" src=\"/img/smiles/$1.gif\"></a>')

Помогите модифицировать этот RegExp так, что бы он: - не реагировал, если между угловыми скобками ничего нет(сейчас вставляет несуществующую картинку) - реагировал только на первые 5 совпадений, остальные просто игнорировал и оставлял без изменений.

Буду премного благодарен!


не реагировал, если между угловыми скобками ничего нет

видимо, так <([0-9]+)>{1,...

реагировал только на первые 5 совпадений

убери жадность, выполни подряд 5 раз :)

SOmni ★★
()
Ответ на: комментарий от SOmni

Жадность не порок)))

Как в таком случае нужно построить replace?

Сейчас он одним проходом парсит все смайлы. Что нужно убрать\заменить, что бы пропарсило только первое вхождение?

З.Ы. Первый вопрос снят, большое спасибо. Теперь просто выводит угловые скобки, а не пустую картинку.

coracs
() автор топика
Ответ на: комментарий от SOmni

Да я просто убрал g и все. оставил там пустые кавычки. Все заработало. Сейчас в 5-и кратный for засуну это дело и будет все гуд ))) Спасибо за помощь!

coracs
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.