正则表达式 pcre 用不匹配的组替换匹配的组?

regex pcre replace matched group by not matched group?

谁能举个例子 例如对于这个字符串

wordride plain fire

用另一个字母替换 spaces

例如 替换

第一个匹配space为space前的第三个字母

例如我想在单词后替换字符 使用这个

   (?:\G(?!^)|word)\K.

使用 a "word" as group

按单词替换字符
      (?:\G(?!^)|(word))\K.

使用 $1$2

但没用

如何解决这个问题

在这种情况下

     wordride plain fire

例如,当算法搜索 "r" 将其替换为组 "word"

获得

     wordwordide plain fire 

我想逐个字符地查找所有字母 ( r i d e ......) 并使用替换 $1 $2 等

替换组词

请帮帮我

要用捕获组替换word后的字母,可以使用:

$s = 'wordride plain fire';

$r = preg_replace('/(?>(word)|\G(?<!^))\K\S/', '', $s, 1);

//=> wordwordide plain fire 

RegEx Demo