是否可以仅使用 PCRE 替换来添加“'s` or `'”(如果单词以“s”结尾)?

Is it possible to add `'s` or `'` (if a word ends with `s`) using only PCRE replace?

免责声明:这是一项人工任务,没有任何初始或潜在问题。

有没有办法执行以下替换:

zerkms -> zerkms'
foo -> foo's

仅使用 PCRE 方言和 replace 操作(如 https://regex101.com/ 中所示且没有特定语言扩展)?

我个人认为这是不可能的,因为没有(?)方法可以将任意(原始字符串中不存在的)常量子字符串放入捕获匹配中。如果可能 - 那么我会有一个解决方案。

我付出的努力:好吧,这里不多,因为我还没有找到在 PCRE 中执行条件替换的任何方法。

PS:https://regex101.com/ 欢迎演示。

PPS:问题根本不是这样做(我知道我们都可以使用带条件的编程语言),而是展示 PCRE 能力(或缺乏)。

PCRE 是关于寻找的。替换不是 PCRE 或正则表达式的一部分。

s/(s?)\b/?"s'":"'s"/eg;

(s?)\b 是 PCRE。剩下的就是Perl的替换实现了。

编辑:"no"。简而言之:您不能使用 PCRE 进行条件替换,因为您首先不能使用 PCRE 进行 replace