使用 PHP 在文本文件中搜索字符串
search for string in text file using PHP
我正在尝试使用 preg_match 在 .txt 文件中搜索短语,但它从未给我匹配项。奇怪的是,如果我尝试将文件内容复制并粘贴到沙盒中,我会得到很好的匹配。这是我试过的:
$txtUrl='https://www.sec.gov/Archives/edgar/data/1411579/000110465920131796/0001104659-20-131796.txt';
$getTextS3 = file_get_contents($txtUrl, true);
$str=strip_tags($getTextS3);
$re = '/Shares of Class A common stock/i';
preg_match_all($re, $str, $match);
var_dump($match);
您找不到任何东西,因为在“Shares of Class”和“A common stock”之间有一个转义的不间断 -space ( )。您必须在正则表达式中包含此不间断 space 。我建议您在执行正则表达式(带有 preg_match_all
的行)之前编写 echo($str);
以查看字符串作为调试步骤。
在搜索这样的字符串之前,您应该仔细分析它。
我正在尝试使用 preg_match 在 .txt 文件中搜索短语,但它从未给我匹配项。奇怪的是,如果我尝试将文件内容复制并粘贴到沙盒中,我会得到很好的匹配。这是我试过的:
$txtUrl='https://www.sec.gov/Archives/edgar/data/1411579/000110465920131796/0001104659-20-131796.txt';
$getTextS3 = file_get_contents($txtUrl, true);
$str=strip_tags($getTextS3);
$re = '/Shares of Class A common stock/i';
preg_match_all($re, $str, $match);
var_dump($match);
您找不到任何东西,因为在“Shares of Class”和“A common stock”之间有一个转义的不间断 -space ( )。您必须在正则表达式中包含此不间断 space 。我建议您在执行正则表达式(带有 preg_match_all
的行)之前编写 echo($str);
以查看字符串作为调试步骤。
在搜索这样的字符串之前,您应该仔细分析它。