назад

Регулярные выражения. PHP. Как вырезать теги

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

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

А помогают они тем, что одна строка, написанная в стиле регулярных выражений порой может заменить до 100, а то и больше, строчек обычного кода Мне пришлось в этом убедиться, когда писала скрипт, вырезающий из кода все теги. Если обычный str_replace приходилось прописывать для каждого тега, на что потребовалось немалое терпение, то замена его на preg_replace привела к сокращению кода до 5 строк, которые и привожу в качестве примера.

function string_replace($str) {
   $str = preg_replace("/[<][br|p]+[>]/", "%", $str); // экранируем переносы строк
   $str = preg_replace("/[<][\/a-zA-Z]+[>]/", " ", $str); // вырезаем теги
   $str = str_replace("%","< /p>< p>",$str); // возвращаем переносы строк
   $str = '< p>'.$str.'< /p>';
   echo $str ;
}

Думаю, по оставленным комментариям не трудно догадаться, что происходит в данной функции.

Для начала экранируем переносы строк, т.е. теги br и p заменяем на любой другой символ, заведомо не использующийся в данной строке.

Затем вырезаем все теги, что остались.

Ну, и на последок, возвращаем символы переноса строк на место, чтобы текст не съехался в один абзац.

Под конец хочу полелиться очень интересной, на мой взгляд, ссылочкой на тему регулярных выражений, после прочтения которой захотелось переделать вывод информации да этом сайте, чем сегодня и займусь)))



создать фотогалерею посмотри по ссылке
Одежда66. перчатки Екатеринбурга на нашем сайте
Веб-сайт о пользующемся популярностью блог-движке WP

назадпросмотров:339.


Если вам понравилась эта статья, вы можете подписаться на рассылку RSS по email:


Комментарии

комментариев: 1

написал: Andrew2010-08-14

Регулярные выражения - это здорово, однако есть готовая функция strip_tags, а для полного счастья - библиотека tidy.


Добавить комментарий

Login:

e-mail: (не публикуется)

web-site:

Введите текст комментария: