如何找到下一行包含特定字符串,然后将其附加到当前行?(Notepad ++)

如何找到下一行包含特定字符串,然后将其附加到当前行?(Notepad ++)

我正在尝试搜索记事本++对于某些“线对”(lineAlineB)将它们连接起来并丢弃其他任何内容。

每对线

  1. lineA必须包含逗号
  2. lineB是紧随其后的一行,lineA同时还包含单词“Proximity”

示例文本

1   "SCOTT, Michael"  
2   "Office Manager"  
3   "Card Number Card Format Disabled"  
4   "0273ADNC PAC Proximity Reader False"  
5   "Random rubbish"  
6   "SCHRUTE, Dwight"  
7   "Card Number Card Format Disabled"  
8   "0897FFRF PAC Proximity Reader False"  

连接文本:

1   "SCOTT, Michael;0273ADNC PAC Proximity Reader False"  
2   "SCHRUTE, Dwight;0897FFRF PAC Proximity Reader False"  
  • 连接的行用分号分隔,以帮助我稍后解析它们
  • “示例文本”中的额外第 2、3、5 和 7 行已被丢弃

答案1

不确定这是否是最清晰的想法......但它确实有效。

首先找到(所有不包含逗号或工作接近

^((?!,|Proximity).)*$\R

并且用空值代替。

然后找到:

^("[A-Z]+,\s[A-Za-z]+)"$\R^"(.*Proximity.*")

并将其替换为:

\1;\2

在此处输入图片描述


或者您可以先查找:

^("[A-Z]+,\s[A-Za-z]+)"$\R(^.*\R?^.*\R?^.*\R?^.*\R?^.*\R?^.*\R?^.*\R?)^"(.*Proximity.*")

用。。。来代替:

\1;\3

这会将姓名行与卡号行合并。然后找到所有没有逗号的行并将其替换为空:

^[^,]*$\R

在此处输入图片描述

相关内容