Извлечь содержимое тега <Row> в XML

Рейтинг: 1Ответов: 1Опубликовано: 25.03.2011

Дан простой String

<Cell ss:StyleID="s73"/>
<Cell ss:StyleID="s79"><NamedCell ss:Name="_FilterDatabase"/></Cell>
<Cell ss:StyleID="s88" ss:Formula="=IF(RC[-1]&lt;&gt;&quot;&quot;,RC[-4]*RC[-1],&quot;&quot;)"><Data ss:Type="String"></Data></Cell>
</Row>
<Row>
<Cell ss:StyleID="s65"><Data ss:Type="Number">1467</Data></Cell>
<Cell ss:StyleID="s68"><Data ss:Type="String">        1-2501к люкс Сумка женская</Data></Cell>
<Cell ss:StyleID="s83"><Data ss:Type="Number">2165</Data></Cell>
<Cell ss:StyleID="s69"><Data ss:Type="Number">23</Data></Cell>
<Cell ss:StyleID="s73"/>
<Cell ss:StyleID="s79"><NamedCell ss:Name="_FilterDatabase"/></Cell>
<Cell ss:StyleID="s88" ss:Formula="=IF(RC[-1]&lt;&gt;&quot;&quot;,RC[-4]*RC[-1],&quot;&quot;)"><Data ss:Type="String"></Data></Cell>
</Row>
<Row>
<Cell ss:StyleID="s65"><Data ss:Type="Number">1468</Data></Cell>

Не получается написать регулярное выражение между тегами ROW

"<Row>.*^(</Row>)</Row>"

Должно работать, но почему-то не работает.

Ответы

▲ 2

Попробуйте так:

/<row>(.*)<\/row>/Uis

Пояснения:

(.*) - ищем от 0 до бесконечности символов

U - выключаем "жадность" регэкспов

i - выключаем case

s - забиваем на переносы строк