Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   помогите с регуляркой (https://javascript.ru/forum/misc/35082-pomogite-s-regulyarkojj.html)

ast_ross 30.01.2013 13:56

Количество вхождений не ограниченно к сожалению... Но это вопрос я решу как нибудь без регулярок, ну а как быть с:
Цитата:

и еще по первому вопросу забыл как быть если надо игнорировать html теги, т.е так уже не работает.

var s='<p>Короткометражки с ориентацией на классику немой комедии, первая из которых была номинирована на «Золотую пальмовую ветвь» в Каннах.</p>';
var val='Коротком';
alert(s.replace(new RegExp('(^'+val+')',''),'($1)'));


но html нужно сохранить, т.е. очистить изначально текст не вариант....

ksa 30.01.2013 14:20

Цитата:

Сообщение от ast_ross
как быть если надо игнорировать html теги

Как вариант...

var s='<p>Короткометражки с ориентацией на классику немой комедии, первая из которых была номинирована на «Золотую пальмовую ветвь» в Каннах.</p>';
var val='Коротком';
alert(s.replace(new RegExp('^([^>]+?>?)('+val+')',''),'$1($2)'));

ast_ross 30.01.2013 14:27

но в этом случае
var s='начало<p>Короткометражки с ориентацией на классику немой комедии, первая из которых была номинирована на «Золотую пальмовую ветвь» в Каннах.</p>';
var val='Коротком';
alert(s.replace(new RegExp('^([^>]+?>?)('+val+')',''),'$1($2)'));

получим не совсем то что надо...

ksa 30.01.2013 14:31

Цитата:

Сообщение от ast_ross
получим не совсем то что надо...

Таки усилим нажим! :D

var s='начало<p>Короткометражки с ориентацией на классику немой комедии, первая из которых была номинирована на «Золотую пальмовую ветвь» в Каннах.</p>';
var val='Коротком';
var r=new RegExp('^(<[^>]+>)?('+val+')','');
alert(s.replace(r,'$1($2)'));
var s='<p>Короткометражки с ориентацией на классику немой комедии, первая из которых была номинирована на «Золотую пальмовую ветвь» в Каннах.</p>';
alert(s.replace(r,'$1($2)'));

ast_ross 30.01.2013 14:37

Спасибо :) может это немного нагло с моей стороны, но можно ли еще получить рабочий вариант для "заканчивается на"?

ksa 30.01.2013 14:39

Цитата:

Сообщение от ast_ross
можно ли еще получить рабочий вариант для "заканчивается на"?

Ну ты, барин, задачки ставишь! (с) :D

ksa 30.01.2013 14:42

Цитата:

Сообщение от ast_ross
рабочий вариант для "заканчивается на"

Как вариант...

var s='<p>Короткометражки с ориентацией на классику немой комедии, первая из которых была номинирована на «Золотую пальмовую ветвь» в Каннах.</p>завершение';
var val='нах.';
var r=new RegExp('('+val+')(<[^>]+>)?$','');
alert(s.replace(r,'($1)$2'));
var s='<p>Короткометражки с ориентацией на классику немой комедии, первая из которых была номинирована на «Золотую пальмовую ветвь» в Каннах.</p>';
alert(s.replace(r,'($1)$2'));

ast_ross 30.01.2013 14:43

Огромное человеческое спасибо!

Deff 30.01.2013 14:49

ksa,
:) Пора ждать: нечеловеческое спасибо!

ast_ross 30.01.2013 14:52

А что если еще усложнить задачу, как в одну ругулярку запихать условие начинается с Корот или начинается с кор или начинается с метражка в общем проверка не на одно а несколько возможных вариантов


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