使用ECMAScript以不同的方式替换匹配的组(条件替换)



我想用PowerRename使用regex重命名一些文件。

我的文件是这样的:

hidded_this_should_not_be_hidden

我希望输出是:

this should not be hidden

所以我需要匹配hidden_并将其替换为零,并且全局匹配_的每个出现,并将其替换为

使用PCRE2很容易。表达式是hidden_|(_),代换是${1:+ :}。但是我在ECMAScript中找不到等价的。有吗?到目前为止,我看到的每个解决方案都要求您使用函数进行替换,而我只能使用纯ECMAScript。

ECMAScript标准不允许条件替换模式。

参见22.1.3.18.1 GetSubstitution (matched, str, position, capture, namedcapture, replacementTemplate),它描述了所有可能的替换模式,条件替换模式不在可用选项列表中。

连续更换两次:

  1. hidden_替换为空字符串和
  2. 代替_

最新更新