Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-解析HTML文件中的字符串_Php_Html_Regex_Preg Match_Preg Match All - Fatal编程技术网

PHP-解析HTML文件中的字符串

PHP-解析HTML文件中的字符串,php,html,regex,preg-match,preg-match-all,Php,Html,Regex,Preg Match,Preg Match All,嘿,伙计们,我正在使用preg\u match\u all($pattern,$htmlPage,$matches)方法(正则表达式)解析PHP中html文件中的一组数据,在为以下字符串创建模式时遇到了一些问题:href=”http://www.free-tv-video-online.me/player/putlocker.php?id=12VT1372H42OKWGKW“target=“\u blank”>电视剧第二季第1集 该模式由中间带有通配符字符串的两个字符串组成。这应该相当简单,但我

嘿,伙计们,我正在使用
preg\u match\u all($pattern,$htmlPage,$matches)
方法(正则表达式)解析PHP中html文件中的一组数据,在为以下字符串创建模式时遇到了一些问题:
href=”http://www.free-tv-video-online.me/player/putlocker.php?id=12VT1372H42OKWGKW“target=“\u blank”>电视剧第二季第1集

该模式由中间带有通配符字符串的两个字符串组成。这应该相当简单,但我在转义通配符字符串两侧的字符串中的正确字符时遇到问题。下面是我尝试过的一种模式的示例

//Pattern escaping " and < charecters
$patern = "/href=\"http://www.free-tv-video-online.me/player/.*\" target=\"_blank\">\<div>TV Show Season 2 Episode 1/";
//模式转义”和\TV Show第二季第1集/”;

我尝试了几个其他模式,但都失败了。在所有尝试中,我都使用正则表达式
*
表示通配符字符串。从HTML文件中解析此字符串的所有匹配项的正确模式是什么?

您在第二个模式上添加了额外的/.9个字符。只需取出它即可


编辑:现在是您编辑原始帖子后的第一个模式。

尝试转义您的内部
/
字符:

"/href=\"http:\/\/www.free-tv-video-online.me\/player\/.*\" target=\"_blank\"><div>TV Show Season 2 Episode 1/"
“/href=\”http:\/\/www.free-tv-video-online.me\/player\/.*“target=\“\u blank\”>电视剧第二季第1集/”

preg\u match(“/href=\”http\:\/\/www\.free \-tv \-video \-online\.me\/player \/.*”target=\“\u blank\”>\tv Show第二季第1集/”,“href=”http://www.free-tv-video-online.me/player/putlocker.php?id=12VT1372H42OKWGKW“target=”_blank“>电视剧第二季第1集',$output);
$output将如下所示:

Array
(
    [0] => href="http://www.free-tv-video-online.me/player/putlocker.php?id=12VT1372H42OKWGKW" target="_blank"><div>TV Show Season 2 Episode 1
)
数组
(
[0]=>href=”http://www.free-tv-video-online.me/player/putlocker.php?id=12VT1372H42OKWGKW“target=“\u blank”>电视剧第二季第1集
)

我真的很抱歉,我认为这是代表我的错误翻译的产物。我刚刚更新了原始问题。该模式与您提供的字符串匹配。您还需要什么?我想可能是因为我知道
/
用于在正则表达式中定义新模式。是的,我发现了,我使用了该模式rn如上所述。起初它不起作用,但我再次查看了HTML页面,发现我缺少了一些
\n
\t
字符,但我成功了!谢谢@bagonyi
Array
(
    [0] => href="http://www.free-tv-video-online.me/player/putlocker.php?id=12VT1372H42OKWGKW" target="_blank"><div>TV Show Season 2 Episode 1
)