Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Помогите написать регулярное выражение! (https://javascript.ru/forum/misc/23830-pomogite-napisat-regulyarnoe-vyrazhenie.html)

Dorian_bs 08.12.2011 03:57

Помогите написать регулярное выражение!
 
Всем привет!
Все не могу понять, как правильно написать регулярное выражение для следующей задачи:

Например:

<div>123|test</div>
<div>632|bot</div>
<div>26|hello</div>


Из каждой строки данного списка необходимо удалить все, что находится до и включая "|".

То есть вывести должно:

<div>test</div>
<div>bot</div>
<div>hello</div>


Как это правильно сделать?
Учитывая то, что числа слева могут быть любой длинны..

trikadin 08.12.2011 08:03

alert("<div>123|test</div>".replace(/(<[\s\S]*?>)[\s\S]*?\|/, "$1"));

Pavel M. 08.12.2011 10:45

Цитата:

Сообщение от Dorian_bs
Учитывая то, что числа слева могут быть любой длинны..

если там только цифры, то можно и так
alert("<div>123|test</div>".replace(/\d+\|/, ""));

Dorian_bs 08.12.2011 14:44

Спасибо огромное!)

Кнопикс 09.12.2011 06:50

Всем Доброго дня!

Что бы темы не плодить, задам аналогичный вопрос в этой.
Мне нужно получить строку содержащую только прописные буквы русского и латинского алфавита, например: строка "МАМА мыла РАМУ" , результат "МАМАРАМУ".
Выражение /([А-ЯA-Z]+)/ Возвращает две строки "МАМА" и "РАМУ" как сделать регулярку которая вернёт одну, или всё же их объединять придётся?

trikadin 09.12.2011 08:19

Придётся объединять.

trikadin 09.12.2011 08:21

Ну, и ещё можно так:

alert("МАМА мыла РАМУ. Рама отбивался и дрыгал НОГАМИ.".replace(/[^А-ЯA-Z]*/g, ""));

Кнопикс 09.12.2011 09:12

Спасибо!


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