我有很多这样的字符串:
str_replace($arr[15], "p", $this->Text->text);
(笔记:或者 $arr[15] 可以是任意数字,例如 $arr[92])
(笔记:或者“p”可以是任何字母或者数字,如“c”或“1”)
我怎样才能把它变成这样:
str_replace("p", $arr[15], $this-Text->text);
正如我上面所说,可以是任何字母或数字(因为我有很多这样的字符串)。
如果有人可以的话,请帮助我。
答案1
- Ctrl+H
- 找什么:
str_replace\(\K(\$arr\[\d+\])(,\h*)("\w")
- 用。。。来代替:
$3$2$1
- 检查环绕
- 检查正则表达式
- Replace all
解释:
str_replace\( # literally
\K # forget all we have seen until this position
( # start group 1
\$arr\[ # literally $arr[
\d+ # 1 or more digits
\] # closing square bracket
) # end group 2
(,\h*) # group 2, a comma followed by 0 or more horizontal spaces
("\w") # group 3, a word character inside double quote
替代品:
$3 # content of group 3
$2 # content of group 2
$1 # content of group 1
屏幕截图: