RegExp-Notepad++;合并语句

RegExp-Notepad++;合并语句,regex,replace,find,notepad++,Regex,Replace,Find,Notepad++,我缺少此正则表达式查找/替换尝试的某些内容。我有以下格式: word | word | word 我想首先用“word”替换每个单词,以生成 "word" | "word" | "word" 然后随后每个[space]|与,,最后生成 "word", "word", "word" 显然,我可以用两个简单的find(f)/replace(r)命令(f:([a-z]*\>)r:“$1”;f:[space]|r:,)来完成这一切,但有一种方法可以同时完成吗 我尝试过很多不同的想法,但都失败了。最

我缺少此正则表达式查找/替换尝试的某些内容。我有以下格式:

word | word | word
我想首先用
“word”
替换每个
单词
,以生成

"word" | "word" | "word"
然后随后每个
[space]|
,最后生成

"word", "word", "word"
显然,我可以用两个简单的find(f)/replace(r)命令(f:
([a-z]*\>)
r:
“$1”
;f:
[space]|
r:
)来完成这一切,但有一种方法可以同时完成吗

我尝试过很多不同的想法,但都失败了。最成功的方法是找到
([a-z]*\>)((\\\|)\R)
,并用
“$1”替换,
,这只给了我一个
“word”,“word”,word
格式。解决方案可能比我正在尝试的要复杂得多,也可能简单得多,但我被难住了。谢谢

您可以使用

(\w+)|\s*\|
并替换为
(?1“$1):,)

详细信息

  • (\w+)
    -第1组:一个或多个单词字符
  • |
    -或
  • \s*\\\\124;
    -0+空格,然后是一个
    字符
  • (?1“$1):,)
    -一种有条件的替换模式,如果组1匹配,则替换为
    +组1内容+
    ,否则替换为

我也被难倒了。我甚至不认为我们可以用一个正则表达式用一种应用程序语言来表达这个替换,因为替换是多方面的。老实说,我喜欢你描述的第一种方法,我看不出有什么不对+我想问一个其他方面都不错的问题。非常感谢您-您查阅了哪些文档/您曾经查阅过哪些文档来了解这一点?记事本++文档的措辞令人困惑,我没有看到这个很酷的条件模式得到很好的解释,如果有解释的话。另外,非常清晰的格式和细节,非常感谢@MichaelFrake见。这里是相关的。