使用php进行数据解析和检索
假设我们在网页中有以下结构。如何使用php检索以下信息? 某物 XAXAXA-SASASA 2-1 扎扎-卡卡卡2-2使用php进行数据解析和检索,php,information-retrieval,data-retrieval,Php,Information Retrieval,Data Retrieval,假设我们在网页中有以下结构。如何使用php检索以下信息? 某物 XAXAXA-SASASA 2-1 扎扎-卡卡卡2-2 <th class='black' colspan='6'>something</th> <tr class=''> <td bgcolor = '#272727' width = 40%>XAXAXA</td> <td bgcolor = '#272727' width = '
<th class='black' colspan='6'>something</th>
<tr class=''>
<td bgcolor = '#272727' width = 40%>XAXAXA</td>
<td bgcolor = '#272727' width = '5%'> - </td>
<td bgcolor = '#272727' width = '40%'>SASASASA</td>
<td bgcolor = '#272727' width = '5%'>2</td>
<td bgcolor = '#272727' width = '5%'> - </td>
<td bgcolor = '#272727' width = '5%'>1</td>
</tr>
<tr class=''>
<td bgcolor = '#484848' width = 40%>ZAZAZAZA</td>
<td bgcolor = '#484848' width = '5%'> - </td>
<td bgcolor = '#484848' width = '40%'>CACACACA</td>
<td bgcolor = '#484848' width = '5%'>2</td>
<td bgcolor = '#484848' width = '5%'> - </td>
<td bgcolor = '#484848' width = '5%'>2</td>
</tr>
什么
XAXAXA
-
萨萨萨
2.
-
1.
扎扎
-
卡卡卡
2.
-
2.
您可以使用正则表达式来匹配这样的模式。preg_match()函数是一个很好的起点。希望您这次接受答案!只需退出1至13组的比赛
$sourcestring="your source string";
preg_match_all('/<th[^>]*>([^<]*).*?<td[^>]*>([^<]*).*?<td[^>]*>([^<]*).*?<td[^>]*>([^<]*).*?<td[^>]*>([^<]*).*?<td[^>]*>([^<]*).*?<td[^>]*>([^<]*).*?<td[^>]*>([^<]*).*?<td[^>]*>([^<]*).*?<td[^>]*>([^<]*).*?<td[^>]*>([^<]*).*?<td[^>]*>([^<]*).*?<td[^>]*>([^<]*)/is',$sourcestring,$matches);
echo "<pre>".print_r($matches,true);
$sourcestring=“您的源字符串”;
preg_match_all('/]*>([^([^([^([^([^([^([^([^([^([^([^([^)您可以使用DOMDocument进行此操作,非常简单:
- 例如:
- 文件:
您有网站使用其内容的权限吗?很抱歉,我不知道接受的答案。是的,我有权限我不理解您的答案。您能说得更清楚吗?
[0] => Array
(
[0] => <th class='black' colspan='6'>something</th>
<tr class=''>
<td bgcolor = '#272727' width = 40%>XAXAXA</td>
<td bgcolor = '#272727' width = '5%'> - </td>
<td bgcolor = '#272727' width = '40%'>SASASASA</td>
<td bgcolor = '#272727' width = '5%'>2</td>
<td bgcolor = '#272727' width = '5%'> - </td>
<td bgcolor = '#272727' width = '5%'>1</td>
</tr>
<tr class=''>
<td bgcolor = '#484848' width = 40%>ZAZAZAZA</td>
<td bgcolor = '#484848' width = '5%'> - </td>
<td bgcolor = '#484848' width = '40%'>CACACACA</td>
<td bgcolor = '#484848' width = '5%'>2</td>
<td bgcolor = '#484848' width = '5%'> - </td>
<td bgcolor = '#484848' width = '5%'>2
)
[1] => Array
(
[0] => something
)
[2] => Array
(
[0] => XAXAXA
)
[3] => Array
(
[0] => -
)
[4] => Array
(
[0] => SASASASA
)
[5] => Array
(
[0] => 2
)
[6] => Array
(
[0] => -
)
[7] => Array
(
[0] => 1
)
[8] => Array
(
[0] => ZAZAZAZA
)
[9] => Array
(
[0] => -
)
[10] => Array
(
[0] => CACACACA
)
[11] => Array
(
[0] => 2
)
[12] => Array
(
[0] => -
)
[13] => Array
(
[0] => 2
)
$DOM = new DOMDocument();
$DOM->loadHTML($Content);
$TH = $DOM->getElementsByTagName("td");
foreach($TH as $Item)
{
echo $Item->nodeValue;
}