- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Какие сайты лидировали в поиске Яндекса и Google в 2022 году
Ключевые изменения в поисковой выдаче для 10 отраслей
Алексей Губерман

Google закроет сервис для A/B-тестирования и персонализации сайтов Optimize
30 сентября
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте!
Такая проблема - произвожу поиск до первого найденного результата, посредством нескольких регулярок объединённых в одну следующей конструкцией:
Получается регулярки ищут по принципу - первое что найдено (из трёх) то и результат.
Мне же нужно искать по принципу - ищем первой регуляркой, если не найдено - то второй, если не найдено то третьей и.т.д.
Как это можно осуществить?
Ps: решить проблему необходимо только силами регулярок
попробуйте конструкцию типа
> Получается регулярки ищут по принципу - первое что найдено (из трёх) то и результат.
> Мне же нужно искать по принципу - ищем первой регуляркой, если не найдено - то второй, если не найдено то третьей и.т.д.
Не пойму, чем первое от второго отличается :)
Str01tel, Дописал в первый пост:
Ps: решить проблему необходимо только силами регулярок
TAFF добавил 16.08.2010 в 00:20
Что-то разницы не уловил.
Регулярки ищут одновременно по трём типам, и выдают первое найденное (из трёх). А мне необходимо искать с приоритетом по убыванию:
ищем первой регуляркой, если не найдено - то второй, если не найдено то третьей и.т.д.
То есть например если 2-я регулярка увидела результат, и 1-я тоже но дальше по тексту (напоминаю, я ищу по первому найденному) то мне нужно получить то что нашла 1-я, т.к. она имеет приоритет выше.
я наверное чего-то не понимаю )
функция preg_match как раз для регулярок, она ищет вхождения и помещает найденное в массив
http://www.softtime.ru/dic/id_dic=137&id_group=3
TAFF, нифига не понял. Покажите конкретный пример, где у вас не получается использовать конструкцию (a|b|c) так, как вы хотите. Т.е. покажите реальную регулярку и реальный текст, по которому она рыскает.
Str01tel, я не использую PHP, и не могу сделать данную конструкцию (if/else)
TAFF, нифига не понял. Покажите конкретный пример, где у вас не получается использовать конструкцию (a|b|c) так, как вы хотите. Т.е. покажите реальную регулярку и реальный текст, по которому она рыскает.
регулярка:
текст:
3
2
1
Тут я получу в результате поиска (до первого найденого как мне нужно) цифру 3
А мне нужно получить результат 1 т.к. первая регулярка должна иметь выше приоритет.
Теперь понял, но как сделать не знаю :)) А что вы используете, какой-то специализированный инструмент для обработки текста регулярными выражениями?
размечтались :)
На каком языке делаете? или в блокноте поиск строите? :)
а можно в регулярке указать приоритет? если нет, то придется три раза просматривать текст
TAFF,
нужно что-то с негативным просмотром назад, типа / (1) | ((?<!1).*?(2)) | ((?<![12]).*?(3)) /sx (s-для того, чтобы переносы строки сопоставлялись точке, х для того, чтобы в шаблоне игнорировались пробелы - так проще читать; и да, я НЕ проверял корректность срабатывания :))
Вообще в языке регулярных выражений есть и поиск по условию (?(?=если)то|иначе)... Нужно покурить хорошенько документацию. Думаю, что ваша задача разрешима силами только регэкспов...