文本抓取大量内容

时间:2013-07-31 17:50:59

标签: php

我需要抓取分配给变量quotes的{​​{1}}内的文字。这就是内容的方式

  

他从Doc和他的朋友那里学到的灵感和回忆技巧,   McQueen迅速出现,带领比赛进入最后几圈。希克斯   拒绝输,将Weathers送入危险的事故中。眼见   为了回顾Doc的命运,McQueen在结束时停止了   让希克斯赢得胜利,然后开始将天气推向天敌   终点线。人群和媒体谴责希克斯的胜利   string并赞扬McQueen的体育精神。虽然   提供了Dinoco赞助协议,McQueen拒绝,坚持   和他现在的赞助商一起欣赏他们的过去   支持。

我需要从这整个内容中抓取string="Mickey"

我在PHP上尝试了Mickey,虽然没有帮助。有什么想法吗?

P.S。引号内的字符串可能会有所不同。

2 个答案:

答案 0 :(得分:3)

我认为preg_match应该像;

一样使用
$matches = Array();
preg_match("/string\=\"(.*?)\"/", $content, $matches);

最后$ matches [1]应该包含值。

答案 1 :(得分:2)

如果字符串中只有一个引用的单词,最简单的方法是:

$myArr = explode('"',$string); // break the string to array with " as dilimeter
echo $myArr[1]; // echo the second element.

更新:对于许多小报 - 只选择string=之后的那个:

$myPos = strpos($string,'string="')+8; // get the position of string after 'string="'
$result = substr($string,$myPos,strpos($string,'"',$myPos)-$myPos);

echo $result;

注意:这应该比使用正则表达式更有效 - phpFiddle 结果:

Yotam: 0.014078ms, bkilinc: 0.048885ms