Удалить часть строки(с меня баланс :)
Добрый день гуру!
в переменной возможны такие варианты. 1Вариант. - (#24174#||#22301#||#22298#||#22303#) && #14827# && #14543# 2Вариант. - #144357# && #14827# && (#24174#||#22301#||#22298#) В идеале нужно удалить то что в скобках(с скобками включительно) и как бы внешний '&&'. т.е. чтобы осталось (если сделайте номер в лс) 1Вариант. - #14827# && #14543# 2Вариант. - #144357# && #14827# *Подмечу их может быть много в конечном варианте - #144357# && #14827# && #18234# && #12324# Или хотяб 1Вариант - && #14827# && #14543# 2Вариант. - #144357# && #14827# && Как я понимаю нужны спецсимволы в регулярном выражении которые я ещё к сожалению не освоил :( . Спасибо за понимание! Очень жду оперативный ответ :) |
Нашёл какое то подобие в сети, но это не то что нужно... Может поймёте куда приблизительно копать...
Дело в том что внутри скобок могут быть и другие значения (пос.), (д.) и т.п. s = "Санкт-Петербург(г.)" "Санкт-Петербург(г.)" s.replace(/\s*\([а-яА-Я\.]+\)$/g, "") "Санкт-Петербург" |
Boomerml,
var str = '(#24174#||#22301#||#22298#||#22303#) && #14827# && #14543#' reg = /[^#]+\(.*?\)|\(.*?\)[^#]+/ str = str.replace(reg,''); alert(str); str = '#144357# && #14827# && (#24174#||#22301#||#22298#)'; str = str.replace(reg,''); alert(str); |
Цитата:
var str = '(#24174#||#22301#||#22298#||#22303#)' Чтоб он и на этот вариант распространился... Ну если мельком в голову нечего не придёт, поставлю условия... |
Предложу такой вариант...
var str='(#24174#||#22301#||#22298#||#22303#) && #14827# && #14543#'; alert(str.replace(/([^#]*)?\(.+\)([^#]*)?/g,'')); str = '#144357# && #14827# && (#24174#||#22301#||#22298#)'; alert(str.replace(/([^#]*)?\(.+\)([^#]*)?/g,'')); |
Boomerml,
var str = '(#24174#||#22301#||#22298#||#22303#)' что на выходе должно быть ? |
Цитата:
Мой вариант так может. :yes: var str = '(#24174#||#22301#||#22298#||#22303#)'; alert('>'+str.replace(/([^#]*)?\(.+\)([^#]*)?/g,'')+'<'); |
Цитата:
Цитата:
|
var str = '(#24174#||#22301#||#22298#||#22303#) && #14827# && #14543#' reg = /(^|[^#]+)\(.*?\)$|\(.*?\)[^#]+/ str = str.replace(reg,''); alert(str); str = '#144357# && #14827# && (#24174#||#22301#||#22298#)'; str = str.replace(reg,''); alert(str); str = '(#24174#||#22301#||#22298#||#22303#)'; str = str.replace(reg,''); alert(str); |
Цитата:
Теперь даже не знаю что делать :) Хотяяя :) допишу компоненту. Если вопросов не будет, то пополам! там немного осталось. остальное в лс. Спасибо что откликнулись) |
Часовой пояс GMT +3, время: 11:20. |