【发布时间】:2016-03-30 19:42:40
【问题描述】:
例如,我有 2 个文件
file1.txt 和 文件2.txt
file1.txt 包含例如以下内容:
a:b
markus:lanz
peter:heinrichs
lach:schnell
并且file2.txt包含例如以下内容(file1.txt的第二次爆炸)
b:c
lanz:hallo
heinrichs:gruss
schnell:langsam
所以我想在 php 中有以下输出:
a:c
markus:hallo
peter:gruss
lach:langsam
这怎么可能?
先爆先搜还是怎样?
谢谢
我当前的代码如下:
<?php
$file1 = 'a:b
markus:lanz
peter:heinrichs
lach:schnell';
$file2 = '
lanz:hallo
heinrichs:gruss
b:c
test:notest
schnell:langsam';
$array = explode(":", $file1);
for($i=0; $i < count($array); $i++) {
$array = explode(":", $file1);
$pattan = $array[$i];
$pattern = '=\n'. $pattan .':(.*)\n=sUm';
$result = preg_match($pattern, $file2, $subpattern);
echo "<br>";
echo $array[$i];
$first = $array[$i];
echo "<br>";
}
$pattern = '=\n'. $first .':(.*)\n=sUm';
$result = preg_match($pattern, $file2, $subpattern);
var_dump($subpattern);
?>
我做错了什么?
【问题讨论】:
-
你似乎在匹配位置,我不确定搜索的重点是什么
-
如果数据是从实际文件中读取的,那么您应该首先使用
file来获取包含单行的数组。然后循环遍历它们,并在冒号处爆炸。 -
希望例如 a:b 转到 a:c 不重要顺序如何
-
显然错了。变量
$file1和$file2不包含您所描述的内容。例如,当您将$file1与:分解时,它会创建一个像这样的数组:{"a", "bmarkus", "lanzpeter", "heinrichslach", "schnell"},我认为这不是您期望的结果。 -
@MuntashirAkon 除非你用
file()阅读文件。