Полезные Регулярные выражения
Заменить квадратную скобку на угловую
Зачем: В компонентах - редакторах, где режутся теги. Однажды понадобилось писать html теги (заголовков, параграфов, выделений) в текстовом поле, однако система их удаляла при сохранении. Похожая система например на форумах встречается.
$str = str_replace( array('[',']'), array('<','>'), $str);
Удалить всё кроме цифр и запятых
$str = preg_replace('/[^0-9,]/', '', $str);
Удалить все кроме букв цифр и пробелов
$str = preg_replace ("/[^a-zA-ZА-Яа-я0-9\s]/","",$str);
// Или
$str = preg_replace('![^\w\d\s]*!','',$str);
Заменить переносы строк на тег <br/>
$str = str_replace(array("\r\n", "\r", "\n"), '<br/>', $str);
Используется массив перевода строк для разных систем. Например, в UNIX это \n
, в Windows - \r\n
, а в Mac - \r
.
Изображения
Удалить первое изображение из текста
$this->item->text = preg_replace('/<img.*?>/', '', $this->item->text, 1 );
Получить пути изображений из строки с текстом
preg_match('/<img(.*)src(.*)=(.*)"(.*)"/U', $content, $arrSrc);
//Первое или последнее
$firstScr = array_shift($arrSrc);
// Или
$lastSrc = array_pop($arrSrc);