【发布时间】:2014-09-09 16:00:41
【问题描述】:
因此可以在捕获组上使用诸如 \L 之类的修饰符以使其全部小写,例如\L\2。如果我想在捕获组上执行额外的替换作为替换的一部分,例如替换一个字母。所以,给定:
cat sat on the mat
正则表达式:(\w)(at)
更换思路:\1{replace c with b}\2
想要的结果:
bat sat on the mat
编辑:我希望解决方案不需要访问匹配组作为第二步(这是一个有点明显的解决方案,不符合我上面的“替换想法”标准实际替换字符串本身中的某种指示符,表明必须进行进一步替换)。 如果这在任何正则表达式中都不可能,我想知道这一点。用来解决这个问题的语言对我来说并不重要,我不受语言的限制。
【问题讨论】:
-
首先,您使用的是什么语言?
-
我正在寻找一种与语言无关的方式来实现这一点,这种方式在 Notepad++ 或 Python 中同样适用。典型的正则表达式引擎中不存在此功能吗?
-
正则表达式引擎因语言实现而异。
-
没有什么叫
language agnostic regex。 -
你不会单独使用正则表达式来做到这一点......
标签: regex