0

我有一排看起来像这样:

'ABCD','ABKCKD','ADFL','3','43

在 UltraEdit 中,我试图找到'3',' 并将其替换为3,我试图找到 as['][\d]+['][,][']并找到'3','

但是,当我尝试更换它时,[\d]+[,],它不起作用。

有任何想法吗?

谢谢。

4

2 回答 2

0

您首先需要捕获引号之间的数字,您可以使用捕获组这样做()

'([\d]+)','

然后使用捕获的数字,^1这样您的替换将是:^1,

Ultraedit 正则表达式使用参考

于 2017-10-20T15:56:07.997 回答
0

UltraEdit支持 3 种不同的正则表达式引擎:

  • Perl ... 使用 Boost Perl 正则表达式库的最强大的正则表达式引擎。
  • UltraEdit ... UltraEdit 的本机正则表达式引擎,其语法类似于 Microsoft Office。
  • Unix ... UltraEdit 正则表达式引擎,带有 Perl 正则表达式语法(或多或少)。

IDM 电源提示标记表达式解释了在运行UltraEdit正则表达式替换时标记/捕获/标记组的用法。

IDM 强力提示Perl 正则表达式:反向引用解释了在运行Perl正则表达式替换时标记/捕获组的用法。此语法也可用于功能有限的旧版Unix正则表达式引擎。

[...]定义一个字符类/集,即一个字符列表。方括号内的任何字符都可以或必须找到以进行肯定搜索。'使用字符集对于像and这样的单个字符没有多大意义,。可以使用['][\d]+['][,]['],但用作搜索字符串要容易得多'\d+','

请注意,Unix/Perl\d正则表达式搜索字符串中的转义序列定义了任何 digit的字符集。UltraEditUnix/Perl正则表达式搜索字符串中的等价物是.[0-9]

替换可以通过搜索字符串'^([0-9]+^)','^1,'使用UltraEdit正则表达式引擎替换字符串来完成。

替换可以通过搜索字符串来完成,并在使用UnixPerl正则表达式引擎时'(\d+)','替换字符串。\1,'

使用Perl正则表达式引擎,也可以使用替换字符串替换搜索字符串'(\d+)'(?=,')\1因为它是在不匹配/选择字符,'的肯定前瞻中指定的。

于 2017-10-20T19:20:23.767 回答