Обработка строки с нестандартными тегами!

Arimas

Guest
Обработка строки с нестандартными тегами!

Имеются данные в виде строки, полученные на запрос с другого сервера и сохраненные в переменной $string.

Сами данные имеют вид:
ID=1 USER=Имя1 AVATAR=pics.gif DEVIZ=Мы не рабы! Рабы не мы! ID=2 USER=Имя2 и т.д.

Необходимо обработать эти данные и вывести в виде таблицы
1 Имя1 <img src=".../pics.gif> Мы не рабы! Рабы немы!
2 Имя2 <img .... и т.д.

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

Прошу помощи Гуру!
 

StUV

Rotaredom
IntenT
м.б. все-таки [m]preg_replace[/m] ?

хотя можно и c [m]explode[/m] сделать
 

Arimas

Guest
Спасибо за советы, но здесь небольшая проблема
у меня не получилось использовать preg_replace т.к. в качестве разделителя "пробел" не подходит, в DEVIZ у пользователей может быть несколько слов и они разобьются .

По preg_match_all никогда с ним не сталкивался и незнаю как использовать, RTFM не хватает (видать не вышел большим умом).
 

StUV

Rotaredom
$str = 'ID=1 USER=User1 AVATAR=pics.gif DEVIZ= Мы не рабы! Рабы не мы! ID=2 USER=User2 AVATAR=pics2.gif DEVIZ=Мы рабы! Рабы мы! :(';
$pattern = '/ID=(.*)\sUSER=(.*)\sAVATAR=(.*)\sDEVIZ=(.*)/iU';
$replacement = "\${1} \${2} <img src=\"img/\${3}\"> \${4}\r\n";
echo preg_replace($pattern, $replacement, $str);
 

Arimas

Guest
Originally posted by StUV
$str = 'ID=1 USER=User1 AVATAR=pics.gif DEVIZ= Мы не рабы! Рабы не мы! ID=2 USER=User2 AVATAR=pics2.gif DEVIZ=Мы рабы! Рабы мы! :(';
$pattern = '/ID=(.*)\sUSER=(.*)\sAVATAR=(.*)\sDEVIZ=(.*)/iU';
$replacement = "\${1} \${2} <img src=\"img/\${3}\"> \${4}\r\n";
echo preg_replace($pattern, $replacement, $str);
Огромное спасибо, разобрался.

Вот тока как это оформить в виде таблицы?
 

StUV

Rotaredom
в $replacement:
\${1} --> <TR><TD>\${1}</td>
\${2,3} ---> <TD>\${2,3}</TD>
\${4} ---> <td>\${4}</td></tr>
и убери \r\n

далее:
$str = '<table>'.preg_replace($pattern, $replacement, $str).'</table>';
echo $str;

смысл ясен ?
 

Arimas

Guest
Разобрался полностью,
Вам всем огромное спасибо!!!

P.S. можно ли сделать проверку на наличие аватара, т.к. при его отсутствии весь вид страницы портится?
 
Сверху