首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在IntelliJ的搜索regex中引用捕获组

在IntelliJ的搜索regex中引用捕获组
EN

Stack Overflow用户
提问于 2019-07-26 16:09:59
回答 1查看 243关注 0票数 1

讨论了用正则表达式代替IntelliJ、WebStorm等路径工具。

我知道您可以在IntelliJ中的替换字符串中引用一个捕获组,比如$n,其中n是捕获组的索引。

例如,可以执行以下查找-替换操作:

代码语言:javascript
复制
Find:    <Foo key=\{([a-z]+)\.key\} />
Replace: <Bar color=\{$1.color\} />

这会改变这类线条:

代码语言:javascript
复制
<Foo key={something.key} />

转入:

代码语言:javascript
复制
<Bar color={something.color} />

,但是如果您想找到像这样的元素对呢:

代码语言:javascript
复制
<Foo key={something.key} />
<Bar color={something.color} />

并将其替换为:

代码语言:javascript
复制
<FooBar el={something} />

如何引用搜索字符串中的捕获组?

我尝试过许多选择,例如:

代码语言:javascript
复制
<Foo key=\{([a-z]+)\.key\} />\s*<Bar color=\{$1\.color\} />

但是reference ($1)似乎不起作用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-26 16:15:20

我刚想通了。在搜索字符串中,可以使用\n引用捕获组,其中n是索引。

在这种情况下,搜索字符串必须是:

代码语言:javascript
复制
<Foo key=\{([a-z]+)\.key\} />\s*<Bar color=\{\1\.color\} />

然而,替换字符串必须是:

代码语言:javascript
复制
<FooBar el=\{$1\} />

他们会被不同的引用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57223645

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档