NOTEPAD++,如何在特殊字符中插入一些字符

NOTEPAD++,如何在特殊字符中插入一些字符

如何得到:

blablabla x/11/1048.1 blablabla blablabla
x/11/i blablabla
blablablax/11/a
 blablabla x/11/b.2 blablabla blablabla blablabla

成为:

x/11/1048.1.full.y
x/11/i.full.y
x/11/a.full.y
x/11/b.2.full.y

答案1

以下是一种方法:

  • Ctrl+H
  • 找什么:^.*?(x/[^/]+/\S+).*$
  • 用。。。来代替:$1.full.y
  • Replace all

解释:

^               : begining of line
.*?             : 0 or more any character, not greedy
(               : start group 1
  x             : literally x
  /             : literally /
  [^/]+         : 1 or more any character that is not /
  /             : literally /
  \S+           : 1 or more character that is not a space
)               : end group 1
.*              : 0 or more any character
$               : end of line
  • 请勿检查. matches newline

替代品:

$1.full.y       : content of group 1 followed by .full.y

给定示例的结果:

x/11/1048.1.full.y
x/11/i.full.y
x/11/a.full.y
x/11/b.2.full.y

答案2

我们只是.full.y在移动序列之后将其添加到行尾blablabla

首先,进行搜索替换,删除所有“blablabla”实例(并使用变体删除多余的空格)。

然后,使用正则表达式,as$表示“行尾”:

在此处输入图片描述

答案3

所以你有了

blablabla x/11/1048.1 blablabla blablabla
x/11/i blablabla
blablablax/11/a
 blablabla x/11/b.2 blablabla blablabla blablabla

文本 blahbla 是什么并不重要。

寻找.*(x/[^/]*/[^/\s\b]*[\s\b]).*

替换为 \1

发现的圆括号中的部分是您想要保留的 x/..../... 模式。

给出

x/11/1048.1 
x/11/i 
x/11/a
x/11/b.2 

我发现其中一些后面有空格,这可能是我的正则表达式的一个缺陷,但没关系,我们可以在行尾找到空格并将其删除。

查找:(\r?\n) <-- 即查找空格字符后跟行分隔符或行终止符 \r\n 或 \n,然后仅用行分隔符或行终止符替换。我们将从中删除空格。

用。。。来代替: \1

x/11/1048.1 
x/11/i 
x/11/a
x/11/b.2 

这会找到以 x/ 开头的每一行并“捕获它”,并将其替换为自身,后跟 .full.y

查找:(^x/.*$)
替换为\1.full.y

x/11/1048.1.full.y
x/11/i.full.y
x/11/a.full.y
x/11/b.2.full.y

相关内容