Соответствие шаблону регулярных выражений (Javascript / ASP) - PullRequest
0 голосов
/ 10 февраля 2010

Мне нужна помощь с регулярным выражением, пожалуйста, помогите, если можете

У меня есть следующий код: я использую Javascript и ASP

{В | внутри | во время | в | в сфере из} {это} {статья | часть написание | редакционный | комментарии | пункт | раздел} {мы} {будем | желать | желать | хотим | разрешить | будет} {рассказать} {вы} {подробнее} {о | относительно | со ссылкой к} {the}

Нужный код должен выглядеть следующим образом:

{В | внутри | во время | в | в сфере из этого {статьи | кусок написание | редакционный | комментарии | пункт | раздел} мы {будем | хотим | хотим | хотим | разрешить | скажу вам} больше {о | относительно | со ссылкой к

Скобки вокруг отдельных слов без | должны быть удалены, как - это - мы - вам больше скажем - в примере выше.

Я думаю, что решение должно быть примерно таким

replace(/{.+?[^\|]/ig, '');   

для замены {не должно быть | в коде; {. +? [^ \ |] и заменить {ни на что

Тогда, если нет стартовой {заменить} на ничто

Я не уверен, как это сделать и как удалить только {} там, где нет | внутри, не удаляя содержимое ...

Ответы [ 2 ]

2 голосов
/ 10 февраля 2010
x.replace(/{([^|}]*)}/g, '$1')
1 голос
/ 10 февраля 2010

Попробуйте:

var string = "{hello|there} {yes} {no|me} {ok}";
string = string.replace(/{[A-Za-z0-9]+)}/g, "$1");

Дает вам:

{hello|there} yes {no|me} ok
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...