Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.144.109.5] |
|
Страницы: (2) [1] 2 все ( Перейти к последнему сообщению ) |
Сообщ.
#1
,
|
|
|
Есть некий набор букв/слов/фраз, например А и Б.
Как в тексте найти всё кроме етих букв/слов/фраз? Например, в фразе "АБЦДАЕФ" наити "ЦД" и "ЕФ? Спасибо ЗЫ: В НЕТ Обшие Вопросы отобразите тему плиз |
Сообщ.
#2
,
|
|
|
Я слабо представляю для чего это (приведенный пример вообще никак на в этом плане не помог). посему как то сложновато придумать регулярку.
может проще заюзать группы. что бы все нужные подстроки помещались в группы. |
Сообщ.
#3
,
|
|
|
Не понял в чем собственно проблема?
/[^АБ]+/ разве не то, что нужно делает? |
Сообщ.
#4
,
|
|
|
ну это только буквы. фразы под это не покатят.
|
Сообщ.
#5
,
|
|
|
Значит надо ждать объяснения (примера) по-подробнее, потому как непонятно, что собственно нужно.
|
Сообщ.
#6
,
|
|
|
аналогичная ситуация, подскажите - хочу регуляркой найти строки, НЕ содержащие определенные сочетания букв, например строки, не содержащие"arr" или "quote"
|
Сообщ.
#7
,
|
|
|
Одним вызовом?
|
Сообщ.
#8
,
|
|
|
Так в чем проблема????
Пишите регулярку которая будет вырезать ненужные фразы. И вам останеться все самое не обходимое. Разве нет так? |
Сообщ.
#9
,
|
|
|
Цитата negram @ Одним вызовом? хотелось бы, что-то типа !(arr|quote) , но в правильной нотации. Возможно ? |
Сообщ.
#10
,
|
|
|
Попробуй написать целиком регулярку, которую хочешь составить, а не подзадачу
Скорее всего, тогда станет яснее... |
Сообщ.
#11
,
|
|
|
конкретный пример, ищу строки, заканчивающиеся на опред. символы, но НЕ содержащие "arr". Как добавить исключение к данному выражению?
(.*""$|.*"",$|.*"",\x20*///$) |
Сообщ.
#12
,
|
|
|
Цитата Old Bat @ а вот это место ещё интереснее. Обычно ищут подстроки, либо проверяют совпадает ли регулярка со строкой...ищу строки Если подстроки, то, в твоём случае, они должны не только оканчиваться на некоторые символы, но и начинаться чем-то... |
Сообщ.
#13
,
|
|
|
"ищу" - ну неточно выразился, просто проверяю
Цитата negram @ проверяют совпадает ли регулярка со строкой именно, читаю файл построчно, приведенное мной выражение успешно проверяет, заканчивается ли она на опред. символы в данном случае не суть как она начинается - строки, совпадающие с регуляркой, могут содержать "arr" где угодно вот подобные строки я бы и хотел исключать сразу при проверке в регулярке, а так приходится проверять доп. условия |
Сообщ.
#14
,
|
|
|
Т.е. считываешь строчку, сравниваешь с регуляркой, и так для всех строк файла?
как на счёт такого выражения: (arr)|(""$|"",$|"",\x20*///$) в этом случае, машина регулярок найдёт сначала arr, захватит его с номером 1 и остановится. Если arr не присутстует, захватит второй элемент, а первых будет пустым (неинициализированым - зависит от реализации). Соответственно, запрос к машине регулярок будет один, доп. проверка всё-ровно будет, но второй проход по строке уже осуществляться не будет. Хотя, регулярка такая будет тормознутее, чем изначальный вариант... |
Сообщ.
#15
,
|
|
|
только что написал регулярку но она не даст нормальный результат. ибо правильнее искать позитив нежели негатив.
например строка: '(arr, dk, "")' при герулярки: /(?<!arr).*$/ даст позитив. так как '(ar' полностю подпадет под условие что это не 'arr', а все остальное подпадет под точку. |