wolfston

Рейтинг
114
Регистрация
10.05.2009

Armin помоему яндексу пора гугл банить )))

http://yandex.ua/yandsearch?p=0&tld=ua&text=%22Subscribe%20to%20the%20Google%20Friends%20mailing%20list%20and%20make%20sure%20you%20always%20know%20what's%20happening%20at%20your%20favorite%20search%20engine%22&clid=14585&lr=187&rd=0

подумаешь, 23 млн страниц дублей, только в одном запросе )))

Но он же гугл, ктож его забанит)) (ну он же памятник, ктоже его посадит))))

ТС, если у вас дле версии 8.2 то вам надо патчить, а то в этой версии есть очень большая дыра, и любой кто ее знает сможет одним запросом поменять ваш пароль и зайти в админку по вашим логином с новым паролем.

http://dle-news.ru/bags/v82/789-nedostatochnaya-filtraciya-vxodyashhix-dannyx.html

Проблема: Недостаточная фильтрация входящих данных в модуле восстановления пароля.

Ошибка в версии: только 8.2, версии ниже 8.2, а также актуальная версия 8.3 данной уязвимости не подвержены

Степень опасности: Очень высокая

rasiell Ладно, не будем спорить, алгоритм генерации еще не опробыван в боях с поисковиками, давайте просто подождем результатов, посмотрем как он себя поведет. Возможно я ошибаюсь, возможно и нет, время покажет.

ewg777

Вы хотите сказать что это будет работать быстрее прегмача? ню-ню...

Может тест производительности провести, дабы даказать что ваш пример работает на порядок быстрее, а? )))

Если уж решитесь, то я бы вам посоветовал бы развернуть цикл, или хотябы в фор поставить вместо форичь, форисчь кстати работает медленнее обычного фора, если уш зашел разговор о производительности...

Я вас понял прекрасно, похоже это вы не разу не генерировали ничего, а так, просто рассуждаете.

Небольшой офтоп. Алгоритм маркова рабоатет так.

Берется текстовка, желательно тематическая, написанная человеком, в большенстве случаев уже имеется в индексе. Далее она разбивается на словосочетания из двух слов, из них делается как бы цепочка, например такая -

Я вас

вас понял

понял прекрасно,

прекрасно, похоже

похоже это

это вы

вы не

не разу

разу не

не генерировали

генерировали ничего

и т.д.

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

В итоге в таком тексте два рядом стоящих слова всегда будут встречатся в исходной текстовке, потому как на этом основан алгоритм.

Морковка обычно палится по тому что у нее очень часто встречаются слова паразиты, или стоп слова, не несущие какогото смысла типа - и, вот, или, так, а и т.д.

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

Теперь к теме.

Вот скажите, при генерации по цепям Маркова, вы что используете текстовку из одного предложения, что у вас эти "два стоящих рядом слова" всегда будут встречаться в живом языке?

Это высказывание говрит что вы вобще не знаете алгоритм генерации по цепям Маркова.

Это одно, а второе, это то, что чтобы по настоящему определить смысл текста это как минимум нужен ИИ, а вы говорите фильтр...

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

Вы сами себе противоречите, говоря, что генерация по цепям Маркова читабельнее.

Похоже вы меня не поняли, при использовании морковки, два стоящих рядом слова всегда встречаются в нормальном предложении, так как это есть основа алгоритма, и морковка ловится по совсем другим признакам, а не по морфологии и бредовсти текста...

Ваш вариант недотягивает даже до морковки.

Что то меня берут сомнения по поводу жизни доров с такими текстовками, палится будут на раз.

Морковка, со всеми своими недостатками, будет выглдеть в разы лучше.

Для примера, выбираем любую пару слов стоящей рядом из вышестоящей текстовки, и ищем в гугле например. Вероятность что такая пара встретится на каком либо сайте практически меньше 10%. Перебрав десяток пар, нашол только одну нормальную, тоесть используемую в речи, а три из них выдали доры построенные скорее всего этой прогой.

Для сравнения выберите пару слов из любого нормального предложения и поищите в поиске, вы найдете как минимум 3-4 точных совпадения на других сайтах.

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

number4:
strpos,substr и иже с ними выполняются быстрее чем preg_match.
это актуально вообщем-то в том случае, если скрипты будут работать с хорошей нагрузкой или с большими объемами.
но тем не менее, всегда используйте строковые функции там, где возможно вместо функций по работе с регулярными выражениями.
приучайте себя делать качественные пхп скрипты.

Слушай умник, не везде можно использовать strpos, substr. Например в данном примере вместо одной регулярки надо было бы городить целую гору кода чтобы использовать строковые функции. И раз такой умный, вместо того чтобы разводить гавно на форуме, предложил бы свой супер быстрый вариант решения задачи на строковых функциях. А прийти перднуть, скопипастив откуда нибудь умную мысль, и считать себя крутым, может каждый дурак.

юрии22, может у вас в винде размер шрифта увеличен, и он не влазит в отведенные поля?

if(($pos=strrpos($text, '.,!'))!==false) $text=substr($text, 0, $pos+1);

Помоему это бред ))

preg_match('|(.+[\.\?\!]).+?|', $text, $matches);
$need = $matches[1];

Это выловит только первое предложение, помоему надо написать так -

preg_match('|(.+[\.\?\!])[^\.\?\!]+?|', $text, $matches);
$need = $matches[1];
Всего: 810