首页 > 解决方案 > 从另一个数组内部拉出正则表达式输出数组

问题描述

所以我试图从文本文件中提取电话号码,文本文件的每一行代表一个用户配置文件。所以到目前为止我的代码打开了文本文件,通过数组分隔每一行,然后使用正则表达式来查找电话号码。我的问题是如何打破正则表达式结果,以便可以将每个数字存储到变量中?到目前为止,我的代码只显示了第二个数组,我需要第二个 foreach 之类的东西,因为每行用户数据可能包含 1 到 6 个电话号码。

 <?php
        $array = explode("\n", file_get_contents('data\samdata_000030.txt'));
        foreach ($array as $string){
        echo $string."<br><br><br>";
        preg_match_all('/\b[0-9]{3}\s*[-]?\s*[0-9]{3}\s*[-]?\s*[0-9]{4}\b/',$string,$matches);
        echo '<pre>';
        print_r($matches[0]);
        echo '</pre>';
    }

标签: phpregex

解决方案


添加第二个 foreach 并正确显示数据的解决方案..

foreach($matches[0] as $matched) {
        echo $matched;
}

推荐阅读