0

我有一大块文本,其中包含每个单词列表的一个或多个实例。我需要为列表中每个单词的所有实例添加一个前缀。

这是我正在尝试做的一个例子 -

单词列表:

foo
bar

字首:

xyz

前文:

onklnagknaubosabdof foo dklfn fknk foo klnksdnia bar dsknska foo knkn bar

后文:

onklnagknaubosabdof xyzfoo dklfn fknk xyzfoo klnksdnia xyzbar dsknska xyzfoo knkn xyzbar

我怎样才能在记事本++中做到这一点?还是有其他工具可以轻松为我做到这一点?

4

1 回答 1

0
  • Ctrl+H
  • 找什么:(?=\b(?:foo|bar)\b)
  • 用。。。来代替:xyz
  • 取消选中匹配案例
  • 检查环绕
  • 检查正则表达式
  • Replace all

解释:

(?=         # start lookahead, make sure we have after:
  \b        # word boundary, to NOT match xyzfoo or foobar
  (?:       # start non capture group
    foo     # literally
   |        # OR
    bar     # literally
  )         # end group
  \b        # word boundary, to NOT match xyzfoo or foobar
)           #end lookahead

给定示例的结果:

onklnagknaubosabdof xyzfoo dklfn fknk xyzfoo klnksdnia xyzbar dsknska xyzfoo knkn xyzbar

屏幕截图:

在此处输入图像描述

如果要替换foobarxyzfooxyzbar,请删除单词边界:

  • 找什么:(?=(?:foo|bar))
于 2019-08-23T08:57:05.240 回答