Коля Дубр

Коля Дубр
Рейтинг
153
Регистрация
02.03.2005
Должность
NetCat
Интересы
cms, музыка, лингвистика

MPavel, однозначно лучшая - спецуха от W3 (По русски здесь), все остальное - вольный пересказ.

Плюс, обязательно прочитать XPath, (по-русски здесь) без него трудно разобраться.

На xmlhack лежит часть бумажной книжки "Технология XSLT", Валиков, но ИМХО там ничего интересного. У меня когда-то была еще другая - вот такая: XSLT - библиотека программиста (Холзнер) - для начала весьма полезно почитать. Правда, подозреваю, что ее хрен достанешь, уже года полтора не попадалась.

Ну, и еще можно почитать архиви пхпклуба:

Преобразование XML + XSLT с помощью Sablotron (морально устарело, но суть передает)

А совсем для начала - стоит почитать статью "Всеобъемлющая история шаблонов" - весьма полезно для общего образования =)

Удачи в изучении сей замечательной технологии +) Если что - обращайтесь +)

Примите и мои поздравления )

Ну, во-первых, стучать "из чувства гражданского долга" - мне лично некогда. Когда натыкаешься на доры - мат и смена поисковой стратегии и без того время отнимают.

Стучать на конкурентов по серпу - стоит ли оно моего времени? "100% попадание" лишь в случае совсем "дурных" нарушений аля скрытый текст - так ведь помилуйте, братцы, 21 век на дворе, так давно уже никто не делает, по крайней мере в серьезных темах!

Совсем другой разговор, когда враг действует по-настоящему масштабно. Ну, т.е. выкатывает, например, сотню доменов-сателлитов, сажает безумных голодных школьников на обмен, и начинает методично оккупировать серпы моей любимой темы. Ну, тут уж, согласитесь, можно и обученного копирайтера нанять, только бы убедил Платона, что конкурент редиска (если это будет дешевле, чем взвинчивать бюджет / создавать свои ресурсы).

Однако надо понимать, что при таких масштабах речь идет не о "моральных нормах", а о стратегии, и всем ясно, что стук - не "подлость", а один из инструментов конкурентной борьбы.

Хочу заметить, что само существование проблемы мне не слишком нравится. В работе Яндекса какую-то неприлично важную роль играет человеческий фактор. Осмысленных телодвижений по улучшению алгоритма уже давно не видно (на мой субъективный взгляд), зато непоты и баны раздают направо и налево. Получается, яндекс некисло зависит от того, будем мы стучать, или нет?

Mitos, я бы сделал так. Коряво, но быстро =)


$text = "Песня про elochka: <p>В лесу родилась elochka, в лесу она росла <img src=\"/elochka.jpg\" alt=\"elochka\"> <br> зимой и летом стройная, веселая <a href=\"http://site.ru/elochka/index.html\">elochka</a> была</p> <p>(Такая вот рагульная песенка про elochka). Как Вам наша elochka?</p>";
function recall($matches) {
$repl = str_replace("elochka", "<u>elochcka</u>", $matches[1]);
return preg_replace("/".preg_quote($matches[1], '/')."$/", $repl, $matches[0]);
}
$result = preg_replace("/^<drop>/", '', preg_replace_callback("/<[^>]+>([^<]*)/", 'recall', "<drop>".$text));
echo htmlspecialchars($result);

Т.е. в функцию передается массив из 2х строк -

1) тег+то что за ним (все вхождение)

2) только то что за ним (первая подмаска)

Дальше логика такая:

1) Делаем замену во второй строке (т.е. в тексте без тега), сохраняем в $repl;

2) Поскольку вторая строка точно входит в первую, находим ее внутри первой и заменяем на $repl, не забыв проверить, что вхождение находится в конце (иначе в последовательности <a href="http://site.ru/elochka/index.html">elochcka произошла бы замена и внутри атрибута)

3) Возвращаем результат, коим заменяется полное вхождение

Ну, и хитрость с "<drop>" - добавляем его, чтоб строка гарантированно начиналась с тега (чтоб обработалась часть строки до первого тега), потом, соответственно, удаляем.

Вообще, подозреваю, что можно сделать и в один регексп, но это надо думать +)

Давным-давно я заморачивался составлением соответствий веса картинок денюжки (в байтах) и того, что на ней написано. У этого метода была какая-то засада, какая уже не вспомню =)

Не совсем понял =)

Но обычно, когда одним регекспом разобраться не получается (или лениво) - функция preg_replace_callback() помогает отцу русской демократии =)

lexa2182, ну, с Вас стол =)

Вообще, последнее время все чаще говорят, что Я берет в каталог бесплатно, и это весьма радует... будем ждать, есть кандидаты =)

Лето ж. В нете остались одни айтишники, которым без нета не живется. Ну, они гуглем и ищут (часто из холиварных соображений, но это отдельный разговор). Присоединяюсь к тем, кто высказал эту мысль. ИМХО вполне очевидно.

Devel, скрипт тоже будет. Просто, базы приходят сравнительно маленькими кусками, которые, в любом случае, нужно проглядывать глазками. Ну, и плодить много внешних утилит не хочется - почти весь инструмент для работы с каталогами у меня встроен в брувзер. Короче, особенности архитектуры =) Ну, и вообще, давно хотел такую штуку сделать, чтоб была +)

Hazard:
А если на adobe.com ссылаться,

А ты попробуй =))

Если серьезно - то да, есть такое мнение. Например, знаменитая табличка "Google ranking factors" - см. блок "Outgoing links". Ну и еще много где неоднократно высказывалось.

Топикстартер, а вы вообще уверены, что оно вам надо? Совмещать приятное с полезным - конечно хорошо... но, с другой стороны, неплохо бы хорошо понимать, чем именно вы занимаетесь - продвигаете услуги фирмы, или ссылки торгуете +)

Всего: 1529