Blog. Just Blog

Быстрый поиск

Введите фрагмент названия статьи для поиска

Исследование защиты программы Expresso

28.02.2018 | Категория: Темная сторона Силы | Автор: ManHunter

Скриншот программы Expresso

Программа Expresso предназначена для создания и отладки регулярных выражений. Отличный инструмент как для новичков, так и для профессионалов. Автор поставил себе целью создать самый лучший инструмент для работы с регулярками, и, похоже, ему это почти удалось. По истечении триального срока отключается часть функционала, а программа начинает показывать сообщение о необходимости регистрации. К чести автора, регистрация абсолютно бесплатная, так что вы запросто можете получить регистрационный номер официально. Ну а если хотите немного подтянуть свои навыки в исследовании сборок .NET, то предлагаю вам эту статью.

Читать статью целиком »
Просмотров: 2716 | Комментариев: 6

Программы для работы с регулярными выражениями

18.09.2013 | Категория: Software | Автор: ManHunter

Программы для работы с регулярными выражениями

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

Читать статью целиком »
Просмотров: 21631 | Комментариев: 11

Подсветка результатов поиска на странице

05.02.2013 | Категория: Web-мастеру и не только | Автор: ManHunter
Сложно представить современный web-сайт без поиска. И хорошим тоном считается не просто выводить все страницы, на которых был найден запрошенный результат, но и как-нибудь выделять искомые слова в тексте. Если контент сайта представляет собой обычный текст без html-разметки, то тут все просто, достаточно использовать что-то типа str_replace. А как быть, если на странице имеются html-теги, и надо выделить только тот текст, который не заключен внутри тегов? Например, нам надо выделить слово "поиск" в такой тестовой строке:
  1. Для поиска и просмотра <a href="/search" title="Результаты поиска">результатов
  2. поиска</aпройдите по поисковой ссылке.
После простой замены она превратится в нечто чудовищное:
  1. Для <b>поиск</b>а и просмотра <a href="/search" title="Результаты <b>поиск</b>а">
  2. результатов <b>поиск</b>а</aпройдите по <b>поиск</b>овой ссылке.
Как видите, текст в атрибутах title нарушен. Это простейший пример, на деле это может привести к полному развалу верстки, а то и еще хуже. При правильно сформированных поисковых запросах злоумышленники смогут даже внедрить в код страницы вредоносные скрипты. Для решения этой проблемы воспользуемся регулярными выражениями:
  1. // Искомая строка для подсветки на странице
  2. $search 'html';
  3. // Создаем строку для регулярного выражения
  4. $pattern "/((?:^|>)[^<]*)(".$search.")/si";
  5. // Подсвеченная строка
  6. $replace '$1<b style="color:#FF0000; background:#FFFF00;">$2</b>';
  7. // Заменяем
  8. $html preg_replace($pattern$replace$html);
Код также немного упрощен для удобства восприятия. В реальных проектах при составлении регулярного выражения $pattern надо обязательно экранировать в искомой строке все служебные символы, которые могут быть использованы в регулярных выражениях.

Читать статью целиком »
Просмотров: 10797 | Комментариев: 7

Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2021
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.12 сек. / MySQL: 3 (0.0487 сек.) / Память: 5 Mb
Наверх