Heim > Backend-Entwicklung > PHP-Tutorial > 请教各位大神改版后的四六级总分怎么用正则表达式获取(旧版的我会获取)

请教各位大神改版后的四六级总分怎么用正则表达式获取(旧版的我会获取)

WBOY
Freigeben: 2016-06-23 13:58:20
Original
1148 Leute haben es durchsucht

这是四六级网站

<table border="0" align="center" cellpadding="0" cellspacing="6" class="cetTable">	<tr>		<th>姓名:</th>		<td>赵阳</td>	</tr>	<tr>		<th>学校:</th>		<td>长春中医药大学</td>	</tr>	<tr>		<th>考试类别:</th>		<td>英语四级</td>	</tr>	<tr>		<th>准考证号:</th>		<td>220090132112529</td>	</tr>	<tr>		<th>考试时间:</th>		<td>2013年12月</td>	</tr>	<tr>		<th valign="top">总分:</th>		<td valign="top" class="fontBold">        <span class="colorRed">					0		        </span>		        	<br /><span class="color666">听力:</span>							000			            <br /><span class="color666">阅读:</span>						000						            <br /><span class="color666">写作与翻译:</span>						000					</td>	</tr></table>
Nach dem Login kopieren

这是我的代码
$a = curl_exec($ch);			$match="#<td>(.*)</td>#";			//$match="#<span>(.*)</span>#";preg_match_all($match,$a,$b);$yourname= $b[1][0];$school= $b[1][1];$cet= $b[1][2];$c= $b[1][5];//分数$score=strip_tags($c);$score=str_replace(" ","",$score);  		return array('school'=>$school,'name'=>$yourname,'cet'=>$cet,'score'=>$score);
Nach dem Login kopieren

其他的都能获取到 就总分那里获取不到


回复讨论(解决方案)

$a =<<< TXT<table border="0" align="center" cellpadding="0" cellspacing="6" class="cetTable">    <tr>        <th>姓名:</th>        <td>赵阳</td>    </tr>    <tr>        <th>学校:</th>        <td>长春中医药大学</td>    </tr>    <tr>        <th>考试类别:</th>        <td>英语四级</td>    </tr>    <tr>        <th>准考证号:</th>        <td>220090132112529</td>    </tr>    <tr>        <th>考试时间:</th>        <td>2013年12月</td>    </tr>    <tr>        <th valign="top">总分:</th>        <td valign="top" class="fontBold">        <span class="colorRed">                     0                 </span>                     <br /><span class="color666">听力:</span>                             000                         <br /><span class="color666">阅读:</span>                         000                                      <br /><span class="color666">写作与翻译:</span>                         000                     </td>    </tr></table>TXT;$match="#<t[hd].*?>(.*?)</t[hd]>#is";preg_match_all($match,$a,$b);$b[1][11] = preg_replace('/\s/', '', strip_tags($b[1][11]));print_r($b[1]);
Nach dem Login kopieren
Nach dem Login kopieren
Array
(
[0] => 姓名:
[1] => 赵阳
[2] => 学校:
[3] => 长春中医药大学
[4] => 考试类别:
[5] => 英语四级
[6] => 准考证号:
[7] => 220090132112529
[8] => 考试时间:
[9] => 2013年12月
[10] => 总分:
[11] => 0听力:000阅读:000写作与翻译:000
)

$a =<<< TXT<table border="0" align="center" cellpadding="0" cellspacing="6" class="cetTable">    <tr>        <th>姓名:</th>        <td>赵阳</td>    </tr>    <tr>        <th>学校:</th>        <td>长春中医药大学</td>    </tr>    <tr>        <th>考试类别:</th>        <td>英语四级</td>    </tr>    <tr>        <th>准考证号:</th>        <td>220090132112529</td>    </tr>    <tr>        <th>考试时间:</th>        <td>2013年12月</td>    </tr>    <tr>        <th valign="top">总分:</th>        <td valign="top" class="fontBold">        <span class="colorRed">                     0                 </span>                     <br /><span class="color666">听力:</span>                             000                         <br /><span class="color666">阅读:</span>                         000                                      <br /><span class="color666">写作与翻译:</span>                         000                     </td>    </tr></table>TXT;$match="#<t[hd].*?>(.*?)</t[hd]>#is";preg_match_all($match,$a,$b);$b[1][11] = preg_replace('/\s/', '', strip_tags($b[1][11]));print_r($b[1]);
Nach dem Login kopieren
Nach dem Login kopieren
Array
(
    [0] => 姓名:
    [1] => 赵阳
    [2] => 学校:
    [3] => 长春中医药大学
    [4] => 考试类别:
    [5] => 英语四级
    [6] => 准考证号:
    [7] => 220090132112529
    [8] => 考试时间:
    [9] => 2013年12月
    [10] => 总分:
    [11] => 0听力:000阅读:000写作与翻译:000
)


但$a里的内容应该是变化的啊

内容是变化的,格式是固定的
否则就无所谓“采集”了

内容是变化的,格式是固定的
否则就无所谓“采集”了


现在有个问题最后一行?>报错
我把你这个
$match="#(.*?)[hd]>#is";
转义了还是报错
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage