gpt4 book ai didi

php - preg_match_all 在使用克拉 (^) 时不匹配

转载 作者:行者123 更新时间:2023-12-02 07:47:13 28 4
gpt4 key购买 nike

我正在使用 preg_match_all 在 HTML 文件中查找 URL。 URL 始终出现在行的开头,没有前导空格,如下所示:

<A HREF="/link/to/here"><strong>Next</strong></A>

我用这个来匹配它:

preg_match_all('|^<A HREF="(?<url>.*?)"><strong>Next</strong>|', $html, $url_matches);

直到我删除了克拉 (^) 字符,它才起作用。我认为克拉与一行的开头相匹配。为什么会导致我的匹配失败?

最佳答案

您必须添加 m 修饰符:

preg_match_all('|^<A HREF="(?<url>.*?)"><strong>Next</strong>|m', $html, $url_matches);

然后 ^ 在一行的开头匹配,否则它只会在整个字符串的开头匹配。

更多信息:http://php.net/manual/en/reference.pcre.pattern.modifiers.php

关于php - preg_match_all 在使用克拉 (^) 时不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6179991/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com