- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как удалить плохие SEO-ссылки и очистить ссылочную массу сайта
Применяем отклонение ссылок
Сервис Rookee
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
jano, как-то так:
$array = glob("cars/*.html"); // в какой папке ищем
$s = array_search('машины', $array); // что ищем
if ($s) { echo $array[$s]; } //выводим результат, если нашло
Задача абсолютна другая. Если я заведомо буду знать что "машины" - то это можно сделать и без регулярных выражений.
Вместо "машины" может быть любое слово.
jano, ну ясен пень. слово машины, в моем примере, меняешь на то, которое нужно найти
jano, ну ясен пень. слово машины, в моем примере, меняешь на то, которое нужно найти
Таких слов тысячи. Вот будет правильная строчка
Ищем: \<a title\="([^\"]+)\" href\="([^\"]+)\"\>([^\"]+)\<\/a\>
На что меняем: <a title="$1" href="$2.html">$3</a>',
Если кому пригодится. Огромное спасибо RiDDi
F: (<a\s+title=".*?"\s+href=".*?)(?<!\.html)(")
R: $1.html$2
Почему-то такой код не работает:
Ищем: \<a class\="spin" href\="([^\"]+)\"\>([^\"]+)\<\/a\>
На что меняем: <a class="spin" href="$1.html">$2</a>',
Вроде всё делаю по аналогии. Подсказали бы где косяк.
jano, вы используете в третьей группе условие ^\" (все, кроме символа двойной кавычки), что без ленивого режима будет работать неправильно т.к. захавает всё до следующей кавычки
в вашей задаче то, что после href вообще не нужно, делайте просто
Ищем: class="spin" href="([^\"]+)"
На что меняем: class="spin" href="$1.html"
siv1987 вон привёл вообще универсальное решение учитывающее возможные множества пробельных символов, а так же проверяющее, что .html нет в href :)
Только я бы перед href все же использовал бы \s* т.к. в данном месте гепотетически может не быть пробела вообще.
В самом же href надо, наоборот, использовать .+ - нам же не нужны href=".html", не так ли?
Ну и, конечно, ленивый режим (.*?) будет работать в данном случаи в два раза медленнее жадного ([^\"]*) т.к. будет осуществляться две проверки (множество + остаток) на каждый символ вместо 1 проверки (только множество) на символ.
Более корректно будет примерно так
ну и от себя добавлю чутка что бы правильно обрабатывать page#comments и page?action=comments