使用strpos解析字符串以反向查找文本

时间:2014-07-18 21:46:56

标签: php

使用:

$result = "<TD><TD><TD><TD><TD><TD>Desired Text</TD></TR></TABLE>"


$find = '</TABLE>';
$pos = strpos($result, $find);

我得到$ find开始的位置。

我想要提取的是“所需文字”

正如您所看到的,没有唯一的标识符可供查找或轻松找到“所需文本”。但是有'&lt; TD&gt;'。

我想要做的是找到'&lt; / TABLE&gt;'然后从那里回来并获得'&lt; TD&gt;'的第一个实例。

例如'&lt; / TABLE&gt;'的位置是47,并且'&lt; TD&gt;'的第一个实例从'&lt; / TABLE&gt;'回来是22个字符。

1 个答案:

答案 0 :(得分:0)

这个应该有效:

<?php
$result = "<TD><TD><TD><TD><TD><TD>Desired Text</TD></TR></TABLE>";

$pos = strrpos(substr($result,0,strrpos($result,'</TABLE>')),'<TD>');

echo substr($result,$pos+strlen('<TD>'));

当然你也可以在这种情况下使用:

echo strip_tags($result);