【发布时间】:2011-05-14 08:32:25
【问题描述】:
我正在学习 RegEx 和网站抓取,并且有以下问题,如果得到解答,应该会大大加快我的学习过程。
我从一个网站以 htmlencoded 格式获取了表单元素。也就是说,我有 $content 字符串,所有标签都完好无损,如下所示:
$content = "<form name="sth" action="">
<select name="city">
<option value="one">One town</option>
<option value="two">Another town</option>
<option value="three">Yet Another town</option>
...
</select>
</form>
我想以这种方式获取网站上的所有选项:
array("One Town" => "one", "Another Town" => "two", "Yet Another Town" => "three" ...);
现在,我知道这可以通过操作字符串、切片、切块、在每个字符串中搜索子字符串等等来轻松完成,直到我拥有所需的一切。但我确信必须有一种更简单的方法来使用正则表达式,它应该立即从给定的字符串中获取所有结果。谁能帮我找到一个捷径?我搜索了网络上最好的正则表达式网站,但无济于事。
非常感谢
【问题讨论】:
标签: php mysql regex web-crawler