Меня достал спам, который сыпался на мой несчастный ящик с моей страницы контактов. Приходило до 5 писем в день, которые были набиты бессмысленными и беспощадными ссылками. Давно чесались руки поставить капчу, но как-то не было времени. А сейчас увидел письмо со своего сайта в папке "Спам" и это стало последней каплей.
Сейчас расскажу как установить reCAPTCHA если вы не используете плагин, а делаете ручками.
Ко мне в блог приходят люди по запросам, связанным с Perl. Часто это новички в Perl, поэтому я решил написать эту статью о безопасности и поделиться готовым решением, которое использую сам.
Даны строки вида:
aa1 bbb ccc
aa2 "bbb ccc" ddd
aa3 "b c d" "s d f" ddd
"aaa4" ccc
Нужно написать регулярное выражение, которое разобъет эти строки либо по пробелу, либо по кавычкам. То есть, если элемент без кавычек — нужно брать его. А если в кавычках — то считать содержимое кавычек одним элементом.
На выходе должно получиться:
{'aa1', 'bbb', 'ccc'},
{'aa2', 'bbb ccc', 'ddd'},
{'aa3', 'b c d', 's d f', 'ddd'},
{'aaa4', 'ccc'}
Это похоже на CSV.
Обычно парсятся целые страницы, но иногда нужно написать функцию или даже просто распарсить всего-лишь один тег.
Рассмотрим задачу: есть тег textarea, у которого может быть сколько угодно совершенно разных атрибутов. Сколько, каких и каков их порядок — не известно. Задача — получить хэш, ключами которого будут имена атрибутов, а значениями — их значения (опа, каламбур).
В эксплуатацию вводятся кириллические. Что это, зачем и как — поразмыслю в этом посте.
Дано: текст с кривым-кривым и неправильным вообще html.
Задача: расставить в этом html ссылки на заданный адрес по заданному слову. Сложность в том, что если это слово стоит в каком-то контейнерном теге, кроме <p>, его трогать не надо.