在Atom编辑器中使用RegEx组件进行搜索和替换

win*_*yer 120 regex atom-editor

我想搜索并替换它

`https://example.com/`{.uri}
Run Code Online (Sandbox Code Playgroud)

[https://example.com/](https://example.com/)
Run Code Online (Sandbox Code Playgroud)

随着vim我会做s/(HTTP.*) {.uri}/[\1](\1)/g,但不与正常工作atom.io.我怎么解决这个问题?

spe*_*goo 208

如果您使用Cmd-F并打开搜索窗格,则右侧会显示".*"按钮.单击它,现在它是正则表达式模式.

我发现

(http.*)\{\.uri\}
Run Code Online (Sandbox Code Playgroud)

并替换为

[$1]($1)
Run Code Online (Sandbox Code Playgroud)

  • 我找到"(http.*)\ {\.\ uri \}"并替换为"[$ 1]($ 1)".有用.这是perl风格的正则表达式,我认为是标准. (18认同)
  • 好吧,我只是忘了在正则表达式中使用括号.只是忽略我说的话. (6认同)
  • `s /(http.*){.uri}/[\ 1](\ 1)/ g`在激活了RegEx的`atom`中不起作用.也许这是一个错误或不同的RegEx语法.这就是我提问的原因. (3认同)
  • 任何想法如何在更换之前评估被捕获的组在其上做一些事情?例如,如果`$ 1`捕获一个数字组 - 123,则通过向其添加1替换它,类似于`eval($ 1 + 1)`..? (3认同)

Mis*_*lis 18

Juste 为未来的读者更新@ speedogoo的答案,如果你在搜索视图中找不到正则表达式模式,它看起来像这样:

在此输入图像描述

您也可以使用快捷键Ctrl+ Alt+ / (默认)打开它.


请注意,即使^$ 已经支持由Atom的查找和替换.

  • 我相信他的意思是不支持行`^`和行结尾`$`锚的开头.支持组替换. (3认同)
  • 它适用于最新版本,链接的github问题已经关闭. (3认同)