tche
Новичок
Помогите с рег. выражением по разбору HTML текста
Имеем такой текст, в котором встречаются теги IMG
The second method is based on constructing, from the operator <IMG WIDTH="9" HEIGHT="21" BORDER="0" SRC="img7.gif" ALT="$ b$">, a family of operators
<IMG WIDTH="40" HEIGHT="21" ALIGN="ABSMIDDLE" BORDER="0" SRC="img8.gif" ALT="$ \pi_x(b)$"> in the algebra generated by the classical weighted shift operators in
<IMG WIDTH="15" HEIGHT="21" BORDER="0" SRC="img9.gif" ALT="$ l_2$">
Необходимо преобразовать картинки к виду
для ввода в базу, то есть сохранить исходные ALIGN и ALT, остальное повыкидовать.
Использую след рег. выражение
Моя беда в том, что ALIGN встречается не всегда, а если сделать его необязательным, поставить (?:align=\"(\w+)\"\s)?, то перестает запоминать даже там, где align есть ($1 пустой всегда), а если сделать обязательным, то, конечно, картинки с отсутсвующим align не проходят под рег. выражение.
Помогите написать правильное выражение,
Спасибо,
Ч.
Имеем такой текст, в котором встречаются теги IMG
The second method is based on constructing, from the operator <IMG WIDTH="9" HEIGHT="21" BORDER="0" SRC="img7.gif" ALT="$ b$">, a family of operators
<IMG WIDTH="40" HEIGHT="21" ALIGN="ABSMIDDLE" BORDER="0" SRC="img8.gif" ALT="$ \pi_x(b)$"> in the algebra generated by the classical weighted shift operators in
<IMG WIDTH="15" HEIGHT="21" BORDER="0" SRC="img9.gif" ALT="$ l_2$">
Необходимо преобразовать картинки к виду
для ввода в базу, то есть сохранить исходные ALIGN и ALT, остальное повыкидовать.
Использую след рег. выражение
PHP:
$reg="/<img\s.*align=\"(\w+)\"\s.*src=\"(\w+)\.gif\"\s.*alt=\"(.*)\".*>/Usi";
$text=preg_replace($reg,"[IMG align=$1 alt=$3]$2[/IMG]",$text);
Помогите написать правильное выражение,
Спасибо,
Ч.