Помогите пож-ста составить регулярку..

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 454
Благодарностей
8 678
Баллы
113
Нужно из текста, спарсенного с сайта:

<div><b>Общие характеристики</b></div> <table width='90%'> <tr> <td width='50%'>Производитель</td> <td width='50%'> Arte Lamp </td> </tr> <tr> <td width='50%'>Страна</td> <td width='50%'> Италия </td> </tr> </table> <div><b>Информация о габаритах</b></div> <table width='90%'> <tr> <td width='50%'>Высота, мм</td> <td width='50%'> 230 </td> </tr> <tr> <td width='50%'>Длина, мм</td> <td width='50%'> 850</td> </tr> <tr> <td width='50%'>Ширина, мм</td> <td width='50%'>530</td> </tr> </table> <div><b>Информация об арматуре</b></div> <table width='90%'> <tr> <td width='50%'>Цвет арматуры</td> <td width='50%'>коричневый</td> </tr> <tr> <td width='50%'>Материал арматуры</td> <td width='50%'>металл</td> </tr> <tr> <td width='50%'>Тип поверхности арматуры</td> <td width='50%'>матовая</td> </tr> </table> </b></div> <div><b>Информация о плафонах</b></div> <table width='90%'> <tr> <td width='50%'>Цвет плафонов и подвесок</td> <td width='50%'>алебастр</td> </tr> <tr> <td width='50%'>Материал плафона</td> <td width='50%'>стекло</td> </tr> <tr> <td width='50%'>Тип поверхности плафонов</td> <td width='50%'>матовая</td> </tr> </table> <div><b>Информация о лампах</b></div> <table width='90%'> <tr> <td width='50%'>Общее количество ламп</td> <td width='50%'>6</td> </tr> <tr> <td width='50%'>Суммарная мощность светильника, W</td> <td width='50%'>360</td> </tr> </table> <table width='90%'> <tr> <td width='50%'>Тип ламп</td> <td width='50%'> накаливания </td> </tr> <tr> <td width='50%'>Количество лампочек</td> <td width='50%'> 6 </td> </tr> <tr> <td width='50%'>Максимальная мощность лампы, W</td> <td width='50%'> 60 </td> </tr> <tr> <td width='50%'>Цветовая температура, K</td> <td width='50%'> 2400-2800 к </td> </tr> </table> <div><b>Дополнительная информация</b></div> <table width='90%'> <tr> <td width='50%'>Возможность подключения диммера</td> <td width='50%'>Да</td> </tr> <tr> <td width='50%'>Степень пылевлагозащиты, IP</td> <td width='50%'>20</td> </tr> </table>

убрать все незначащие пробелы, в том числе в подобных местах: <td width='50%'> Arte Lamp </td> (перед и после "Arte Lamp")..
за тексты цепляться нельзя, т.к. тексты на сайте могут меняться..
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 606
Благодарностей
4 597
Баллы
113

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
Код:
(?<=>) | (?=<)
 
  • Спасибо
Реакции: redman и Sergodjan

kagorec

Client
Регистрация
24.08.2013
Сообщения
921
Благодарностей
473
Баллы
63
>[\s\t\r\n]+ заменить на >
[\s\t\r\n]+< заменить на <

п.с. артэламп злой стал, банит быстро(
 
  • Спасибо
Реакции: redman и Sergodjan

doc

Client
Регистрация
30.03.2012
Сообщения
8 606
Благодарностей
4 597
Баллы
113

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 454
Благодарностей
8 678
Баллы
113
ага, всем большое спасибо, получилось..
особое спасибо doc, использовал его вариант регулярки..
(?<=<|>)\s+|\s+(?=<|>)
 
Последнее редактирование:

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)