将2行或文本文件合二为一

时间:2013-05-19 11:24:48

标签: php regex text notepad++

我有:

第一个文本文件:

Mark

Jon 

Brik

第二个文本文件:

Davdiosn

smith

gick

我想让它们像:

Mark Davodison

Jon Smith

Brick Grick

我该怎么做?

3 个答案:

答案 0 :(得分:0)

  1. 首先将文件1中的所有文本放入array1
  2. 然后对第二个文件执行相同操作并将所有值放在array2
  3. 然后使用array_splice

答案 1 :(得分:0)

使用file将文件加载到数组,并使用array_filter

过滤空格
$a = array_filter(file("a.log"));
$b = array_filter(file("b.log"));

您可以使用array_map

foreach(array_map(null, $a, $b) as $name) {
    echo implode(" ", array_map("trim",$name)), PHP_EOL;
}

MultipleIterator

$mi = new MultipleIterator();
$mi->attachIterator(new ArrayIterator($a));
$mi->attachIterator(new ArrayIterator($b));

foreach($mi as $name) {
    echo implode(" ", array_map("trim", $name)), PHP_EOL;
}

输出

Mark Davdiosn

Jon smith

Brik gick

答案 2 :(得分:0)

使用Column Select和Regular Expressions的组合,您可以在Notepad ++中实现此目的。

  • 打开第二个文件。
  • 将光标保持在开头,按Shift + Alt并使用向下箭头键转到最后一行。然后多次使用右箭头键选择所有内容。
  • Ctrl + C复制内容。
  • 打开第一个文件。
  • 在第一行的末尾添加空格,使其成为文件中最长的行。
  • 将光标保持在第一行的末尾并粘贴内容Ctrl + V

现在文件看起来应该是这样的,

Mark Davdiosn

Jon  smith

Brik gick

您可能会在某些行中的单词之间看到更多的空格。

  • 现在使用“查找/替换”功能。
  • 选择正则表达式搜索模式。
  • 在“查找”框中输入此( ){2,}
  • 在替换框中输入此( )

现在你有了你想要的文件。

Mark Davdiosn

Jon smith

Brik gick

干杯..