YuS 2
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору SharkyEXE Цитата: А можно вообще универсальный вариант, мол, и плюсы и другие символы могут быть или такое невозможно? | Можно, конечно... Код: (?!p:QwertyZX[^,]*),.+(?=,f:\d+) | Но, до тех пор, пока у задачи будут меняться условия "на лету", универсального решения не получите... будут только частные решения, той или иной степени универсальности... Например, что в условиях необходимо отобразить: 1. Образцы исходных строк ..., ..., ... 2. Все возможные (чем-либо отличающиеся друг от друга) варианты строк ..., ..., ... 3. Что необходимо получать в результате ..., ..., ... 4. Какое-либо подробное описание того, что именно надо удалить, а что оставить. Полные условия для этого описания. Судя по всему, Вам необходимо изменить какие-то строки в массиве текста. Отсюда вопросы: 1. По каким критериям отбираются строки для изменения? 2. Что именно в строках необходимо изменять? а) часть строки (подстроку) без точного местоположения в исходной строке, т.е. перед изменяемой частью (или опорными точками, начальной и конечной) или после неё, могут находиться какие-либо данные? пример: p:QwertyZX,c:001541,c:031541,c:050001,c:100003,c:111542,c:141542,C:2710,C:4ae1,f:40,v:Ctdf a:Treyu,p:QwertyZX,c:001541,c:031541,c:050001,c:100003,c:111542,c:141542,C:2710,C:4ae1,f:40 a:Treyu,p:QwertyZX,c:001541,c:031541,c:050001,c:100003,c:111542,c:141542,C:2710,C:4ae1,f:40,v:Ctdf - возможны ли такие варианты? б) строка всегда состоит из частей, разделенных запятыми и всегда необходимо оставлять первую и последнюю часть, с учетом отобранных строк из п.1? - в этом случае, действительно, проще резать строку и выводить первую и последнюю части... и регулярки тут не нужны вовсе. |