3

更新问题:

$li_text = $li->plaintext;
echo '<br>'.$li_text;
echo '<br>'.$li_text = preg_replace('/\:(.*?)\>/',':', $li_text);

$li获得价值“资格:学校和毕业> BE / B.Tech(工程)”//by using simple html DOM parsing from other websites

我得到的输出是

Qualification : School & Graduation > BE / B.Tech ( Engineering )
Qualification : School & Graduation > BE / B.Tech ( Engineering ) 

如果我分配$li_text = "Qualification : School & Graduation > BE / B.Tech ( Engineering )",那么 REGEX 工作正常。

4

2 回答 2

2

您的代码运行良好。请注意,preg_replace它不会更改主题(即$str)但会返回结果。

preg_replace()如果主题参数是一个数组,则返回一个数组,否则返回一个字符串。

如果找到匹配项,将返回新的主题,否则 主题将保持不变,如果发生错误则返回NULL 。

所以:

preg_replace('/:(.*?)\>/',':', $str);

echo $str;

。但:

$str = preg_replace('/:(.*?)\>/',':', $str);

echo $str;

正在工作

于 2013-06-03T13:00:54.310 回答
1

试试这个:

preg_replace('/(?<=:)(.*?)>/', '', $str);
于 2013-06-03T12:54:06.593 回答