<?php
$str='<abc:cde scheme="urn:simple">nonadult</abc:cde><abc:keywords>bluegrass,banjo,banjonut,country,rangers</abc:keywords><abc:thumbnail url="http://www.banjonut.com/bluegrassblog/countryrangers.jpg" /><ccc:category text="Society & Culture"><itunes:category text="Personal Journals" /></ccc:category>
<ddd url="http://www.bcd.com/countryrangers11.mp3" fff="14299847" eee="meg" />';
$str= preg_replace("/<([^i]w+(:w+)?)s+((w+?=[^s]+s+)+)s*/>/ies","'<\1>rn'.preg_replace(\"/([a-z]+)=(\\")?([^s">]+)(\\")?/i",\"<\$1>\$3</\$1>\n\",\"\3\").'</\1>'",$str);
?>
我想用正则把上面的$str中的<xxx ddd="ccc" .../>解析成以下的格式:
QUOTE:
<xxx>
<ddd>ccc</ddd>
...
</xxx>
用上面的正则却把$str解析成:
QUOTE:
<abc:cde>
<scheme>urn:simple</scheme>
>nonadult</abc:cde><abc:keywords>bluegrass,banjo,banjonut,country,rangers</abc:keywords><abc:thumbnail <url>

</url>
</abc:cde><ccc:category text="Society & Culture"><ccc:category>
<text>Personal</text>
Journals" </ccc:category></ccc:category>
<ddd>
<url>
http://www.bcd.com/countryrangers11.mp3</url>
<fff>14299847</fff>
<eee>meg</eee>
</ddd>
这个正则解析不准确,谁提供一个或者帮忙修改下
[ 本帖最后由 52php 于 2007-3-3 06:54 PM 编辑 ]