【问题标题】:REGEX PHP String to JSON Output [closed]REGEX PHP字符串到JSON输出[关闭]
【发布时间】:2013-09-22 21:05:25
【问题描述】:

我有一个网站的源代码(从 file_get_contents 获取)。

看起来是这样的:

<td id=dat>
    2013-09-22
</td>
<td>
    <a href="http://www.test.at/results/show_results.php?v=12252" 
        target=_blank>bbbbbbb
    </a>
</td>
<td id=dat>
    2013-09-22
</td>
<td>
    <a href="http://www.test.at/results/show_results.php?v=12231" 
        target=_blank>Tlalalala
    </a>
</td>
<td id=dat>
    2013-09-22
</td>
<td>
    <a href="http://www.test.at/results/show_results.php?v=12234"
        target=_blank>Tzzzzz
    </a>
</td>

现在我需要做一个正则表达式,这样我就可以拥有它......

<?php

$JSON = array(
    "results" => array(
        array(
            "title" => "bbbbbbb",
            "url" => "http://www.test.at/results/show_results.php?v=12252",
            "date" => "2013-09-22"
        ),
        array(
            "title" => "Tlalalala",
            "url" => "http://www.test.at/results/show_results.php?v=12231",
            "date" => "2013-09-22"
        ),
        array(
            "title" => "Tzzzzz",
            "url" => "http://www.test.at/results/show_results.php?v=12234",
            "date" => "2013-09-22"
        ),
    ),
);

echo json_encode($JSON);

?>

有人可以帮助我吗?

【问题讨论】:

  • 到目前为止你能提取什么?您在正则表达式中的哪个位置卡住了?当我们看到您到目前为止所做的尝试时,StackOverflow 的效果最好。另外,请使用代码块来格式化您的代码。
  • 嗨,我添加了代码块,但我不知道如何对其进行正则表达式。 :(
  • 哦,太好了!我没有看到您最初尝试使用的 HTML。通常不建议使用正则表达式解析 HTML,除非您为非常有限且特定的子集执行此操作,即使那样 - 使用 HTML 解析器通常更容易和更简单。您会接受根本不涉及正则表达式而是使用(更简单的 IMO)html 解析器的答案吗?

标签: php html regex json


【解决方案1】:

我个人建议使用 html Dom 解析器并以这种方式进行 - 看看这个有一些你可以看看的例子 http://simplehtmldom.sourceforge.net/

【讨论】:

    猜你喜欢
    • 2014-06-24
    • 1970-01-01
    • 1970-01-01
    • 2019-08-20
    • 1970-01-01
    • 2022-01-04
    • 2018-01-21
    • 2013-06-01
    • 2012-07-09
    相关资源
    最近更新 更多