我想在 eclipse 中使用正则表达式来熟悉软件更新的代码。
而不是
{$CFG->prefix}example1.xy
代码必须是:
{example1}.xy
工作。
另一个例子是:
{$CFG->prefix}example2.foo
>
{example2}.foo
常数部分是:{$CFG->prefix}
; .
我尝试了以下内容(我使用空格来简化阅读):
查找:\{\$CFG-\>prefix\} ([a-z]|[0-9])* \. ([a-z]|[0-9])*
哪个会找到请求的字符串。我很难替换它。
我可以使用,/1
存储正则表达式的结果并在替换中使用它(对吗?)但我不确定如何修改/操作此结果。
感谢您的帮助。
答案 0 :(得分:2)
你可以尝试
\{\$CFG-\>prefix\}([a-z0-9]*)\.
并替换为
{\1}.
我不确定为什么你的正则表达式中有空格,我删除了它们。
量词*
应位于您的论坛内,否则您只会在\1
中找到最后一个匹配的字符,而不是完整的字词。
由于您不想更换最后一部分,因此无需匹配和替换它。
答案 1 :(得分:1)
尝试以下搜索并替换:
查找:\{\$CFG->prefix\}([a-z0-9]*)\.([a-z0-9]*)
替换为:{\1}.\2
使用以上内容:
Here 是一个快速的屏幕演示,可以显示这一点。
为了让上面的find-replace工作,我不得不对OP的find表达式进行以下更改:
([...]*)
而不是([...])*
[a-z0-9]
而不是[a-z]|[0-9]