我有一个XML内容,如
<?xml version="1.0"?>
<content
ID="immunSect"/>
<table
border="1"
width="100%">
<thead>
<tr>
<th>Vaccine</th>
<th>Date</th>
<th>Status</th>
</tr>
</thead>
<tbody>
<tr>
<td><content
ID="immun2"/>Influenza virus vaccine</td>
<td>May 2012</td>
<td>Completed</td>
</tr>
<tr>
<td><content
ID="immun4"/>Tetanus and diphtheria toxoids</td>
<td>April 2012</td>
<td>Completed</td>
</tr>
</tbody>
</table>
</text>
我的问题是我想改变这个节点
<tbody>
<tr>
<td><content
ID="immun2"/>Influenza virus vaccine</td>
成
<tbody>
<tr>
<td><content
ID="immun2">Influenza virus vaccine</content</td>
请帮我,我怎么可以获取特定的部分,改变从节点结构
<td><content id="xxx"/>test
成
<td><content id="xxx">test</content>
基本上歌厅XML数据时,把循环直到EOF中得到每一行(@字符串1)和解析它,它重写新的变量(@字符串2),你可以将它保存到XML文件/无论你需要它。开始解析@字符串1,移动一切@字符串2,直到你遇到和忽略它,而不是把一个标志1.复制继续,直到找到,然后输入@字符串2。当然,它可以更优雅的方式做,但我需要你在使用获取XML数据就知道了。
希望帮助。
由于您的XML格式不正确,则不能使用解析工具,如DOM文档。也许你唯一的选择是使用preg_replace
正则表达式替换。这应该工作:
$xml = preg_replace('#<td>(<content.*?)</td>#s', '<td>$1</content></td>', $xml);