我有一个文本文件,它看起来象下面这样:如何处理文本文件中,PHP
有没有办法以呼应只有每行的特定字符?以 “9954” 值
- 29个字符
我的代码来显示文本文件:
<?php
header('Content-Type: text/html; charset=UTF-8');
echo "<pre>".file_get_contents("MAGFLE_Greenbnk_Caraga.txt")."</pre>";
?>
您的帮助将是非常非常感谢
谢谢
我有一个文本文件,它看起来象下面这样:如何处理文本文件中,PHP
有没有办法以呼应只有每行的特定字符?以 “9954” 值
我的代码来显示文本文件:
<?php
header('Content-Type: text/html; charset=UTF-8');
echo "<pre>".file_get_contents("MAGFLE_Greenbnk_Caraga.txt")."</pre>";
?>
您的帮助将是非常非常感谢
谢谢
你可以st将数据中的.txt数据放入数组中,然后按照您的要求进行排序。 explode()函数应该有所帮助。链接如下 -
使用多正则表达式和遍历所有匹配:
$source = file_get_contents("MAGFLE_Greenbnk_Caraga.txt");
$matches = [];
preg_match_all("/(9954[0-9]{25}).*(.{13}$)/um", $source, $matches);
for($i = 0; $i < count($matches[1]); ++$i) {
echo "Line {$i} -- ";
echo "chars that start with '9954': {$matches[1][$i]} --- ";
echo "last 13 chars: {$matches[2][$i]} <br>";
}
正则表达式中包含两个捕获组。第一组匹配以'6654'开头的29个字符。第二个匹配最后13个字符。
的匹配阵列包含3个数组:
我将你的数据时,得到下面的输出
根据您的数据,这不适用于所有情况。也许你必须增加更多规则的正则表达式。
这些列是如何分开的?使用标签? – Rizier123
使用'file()'将文件读入一行数组。循环访问数组,使用正则表达式提取所需的部分。 – Barmar
或使用'while($ line = fgets($ fp))'循环从文件中一次读取一行,然后执行同样的操作。 – Barmar