这是关于Epsilon编辑器中的正则表达式替换。我有一个csv
文件,我想用某种模式替换文本。
当我在替换组中使用#1、 #2 等时,模式替换效果很好。
但是,当我输入#10时,它是被放置在这里的第一组。如何使用大于9的匹配组?
这是关于Epsilon编辑器中的正则表达式替换。我有一个csv
文件,我想用某种模式替换文本。
当我在替换组中使用#1、 #2 等时,模式替换效果很好。
但是,当我输入#10时,它是被放置在这里的第一组。如何使用大于9的匹配组?
(嗯,一个很晚的答案,我现在意识到;无论如何......)
我找不到文档,但我认为只支持 1(整个模式为 0)到 9(至少在交互式命令中)。
我在 src/searc.e 中找到了这段代码:
...
char *with;
...
if (*with != '#')
insert(*with);
else if (isdigit(*++with)) {
bufnum = orig;
group = *with - '0';
buf_xfer(tmp, find_group(group, 1),
find_group(group, 0));
bufnum = tmp;
} else {
...
在我看来,# 之后唯一的第一个字符被考虑。
您可以尝试发送邮件至 support@lugaru.com 以进一步澄清,我发现 Steven Doerfler 总是非常有帮助(Epsilon 14 现在处于测试阶段,这可能是改进文档的机会。)