-2

我有一个包含 html 标签、文本等的数组。我想只从列表中获取 .org 域。

我的代码不起作用:

<?php

$list = htmlentities(file_get_contents('list.html'));

preg_match("/^[a-zA-Z0-9-.]+(.org)$/", $list, $matches);

var_dump ($matches);
?>
4

1 回答 1

1
$list = "google.com
    http://d.org
    google.org
    <ul>
        <li>www.yahoo.co.uk</li>
        <li>http://www.bsdflj.org.uk</li>
        <li>nsdfljsdf.org</li>
    </ul>";

preg_match_all("~([a-zA-Z0-9-.]+.org)[^\.]~s", $list, $matches);
var_dump ($matches[1]);

$list 是我测试过的。

var_dump() 的输出:

array(3) {
  [0]=>
  string(5) "d.org"
  [1]=>
  string(10) "google.org"
  [2]=>
  string(13) "nsdfljsdf.org"
}
于 2013-03-23T13:49:02.870 回答