如何匹配花括号中的单词?

How to match words in curly braces?

我想用 sublime 替换一些文本。我有一些文字

{{abcd dog cat}}

我想让他们变成

{abcd dog cat}

我无法直接将{{替换为{,因为我的文本中需要一些{{

我知道使用正则表达式可以达到我的目的。但是不知道怎么用

现在我用{}来代替 \{{(\w+)}\},但是没用。

使用 \w 不会匹配 space。您可以使用例如 .+? 匹配 {{}} 之间的内容,并将捕获组放在第一个和第二个大括号之间。

在替换中使用</code></p> <pre><code>{({.+?})}

Regex demo

如果您只想匹配单词之间带有单个 space 的单词字符,您可以使用 match 1+ word chars 并重复 0 次或多次 1+ word chars 前面有 space:

{({\w+(?: \w+)*})}

Regex demo