将2个文本文件合并为一个相同的行

时间:2014-06-25 08:37:23

标签: text merge notepad++

我无法在这个问题上找到答案。 好吧,我有一个文件,包含:

FILE2.TXT

PRIMERB
PrinceValiant
Priory
PRISTINA
embossed
heavy
incised
light
Outline
ribbon

FILE1.TXT

PRIMERB 333
PrinceValiant 581
Priory789
PRISTINA3!1
embossed509
heavy5@
incised999
light5*1
Outline937
ribbon-81

我希望将这两个文件合并/合并,以便它们像:

PRIMERB 333 PRIMERB
PrinceValiant 581 PrinceValiant
Priory789 Priory
PRISTINA3!1 PISTINA
embossed509 embossed
heavy5@ heavy
incised999 incised
light5*1 light
Outline937 Outline
ribbon-81 ribbon

我该怎么做? 顺便说一句我正在使用Notepad ++

先生。摩根

3 个答案:

答案 0 :(得分:6)

  1. 将空格字符添加到file1第一行的末尾,直到它长于file1中的最长行。

  2. 对文件2的整个内容进行列模式选择。通过在文件中拖动鼠标的同时按住ALT键来执行此操作。拖动时,您应该看到所选屏幕的矩形区域。在file2的第一行中的第一个字符之前开始选择可能是最简单的。也可以只用键盘进行列模式选择。使用箭头键移动光标时按住ALT和Shift键。

  3. 复制所选文字。 (Control-C或menu => 编辑 => 复制或上下文菜单=> 复制。)

  4. 在添加到file1的空格后
  5. 粘贴

  6. 删除不必要的空格。

  7. 如果files1和file2中的现有空格很重要,则可以使用正则表达式将file2中的每一行更改为具有某些字符或字符序列,这些字符或字符序列在选择其内容之前不会出现在任一文件中。例如,找到^并替换为!!。然后,您可以使用另一个正则表达式仅删除粘贴添加的空格。例如,将_*!!(空格,星号,感叹号,感叹号)替换为_(空格;请注意,空格在这两个字符串中显示不正确,因此它们显示为下划线{{ 1}}为了清楚起见)。

    另请参阅编辑 => Notepad ++帮助页面的列模式编辑部分。

答案 1 :(得分:1)

也许您可以尝试ConyEdit。它是文本编辑器(包括Notepad ++)的跨编辑器插件。

执行以下步骤
 1,保持ConyEdit运行。
 2,使用cc.gl a命令行将数据推送到数组a。
 3,使用cc.gl b命令行将数据推送到数组b。
 4,使用cc.p命令行打印数组a和数组b的内容。

Gif示例
Gif Example

答案 2 :(得分:0)

我认为您不仅可以通过某种方式自动执行此操作,而且还可以更轻松地复制和删除。粘贴...
但这纯粹取决于您在这些文本文件中获得了多少行文本。如果它们包含少于50行,我建议你复制(或剪切)和粘贴 无论如何,我都不知道如何在Notepad ++中实现自动化。

编辑:

在您提出请求后,我编写了一个快速的PHP脚本,其中包含' file1.txt'和' file2.txt'并将其与' file3.txt'

相结合
<?php
$files1 = file('file1.txt'); // read file1.txt
$files2 = file('file2.txt'); // read file2.txt
// Assuming both files have equal amount of rows.
for($x = 0; $x < count($files1); $x++) {
  $files1[$x] = str_replace(array("\n", "\r"), "", $files1[$x]);
  $files3[$x] = $files1[$x]." ".$files2[$x];
}
$result = implode("", $files3); // combines the array to a single string.
if(file_put_contents('file3.txt', $result)) { // puts the imploded string into file3.txt
  echo "Writing to file 'file3.txt' was successfull.";
}
?>

现在我想尽我所能帮助你,但此时我无法访问自己的域名,而且我还没有为你上传自己的文件。

您可以通过下载最新的USBWebserver来实现自己的运行 1.从您从USBWebserver网站下载的.zip中提取文件 2.转到刚刚提取的&#39; root&#39;文件夹。
3.删除&#39; root&#39;内的所有内容。文件夹。
4.复制上面的代码并将其另存为&#39; index.php&#39;在&#39; root&#39;里面文件夹(您也可以使用记事本++) 5.移动你的文件.txt&#39;和&#39; file2.txt&#39;同根&#39; root&#39;文件夹。
6.上一个文件夹并执行&#39; usbwebserver.exe&#39;。
7.单击“localhost”#39;当窗口弹出时。
8.如果您收到消息:&#34;写入文件&#39; file3.txt&#39;是成功的。&#34;你现在应该有&#39; file3.txt&#39;在那&#39; root&#39;文件夹中。