我想将字符串中的两个字符与另外两个字符交换。
Start string = " ' bHello ' ! "你好吗?"
随机字符串= "1234567890abcdefghijklmnopqrstuvwxyz!£$%^&@"
我如何交换' b ' !' Q ' %和随机值,所以它看起来像这样
End result string = " ' 4Hello ' ^how ' $are ' @you."
我已经试过了
I tried so far
$out = " ' vHow ' !是"@you。"
$模式=阵列("1"、"J"、"2"、"3"、"4"、"5"、"6"、"7 ","`!","`$","`%","`^","`& amp ;","`)","`~","`#","`@","` 问","e"、"y"、"‘t"、"p"、"‘j"、"k"、"l"、"米"、"‘x"、"v"、"‘M"、"问"、"‘e"、"R"、"‘t"、"y"、"p"、"G"、"k"、"l"、"x"、"v");
$预备考试=阵列("1"、"J"、"2"、"3"、"4"、"5"、"6"、"7 ","`!","`$","`%","`^","`& amp ;","`)","`~","`#","`@","` 问","e"、"y"、"‘t"、"p"、"‘j"、"k"、"l"、"米"、"‘x"、"v"、"‘M"、"问"、"‘e"、"R"、"‘t"、"y"、"p"、"G"、"k"、"l"、"x"、"v");
tempstr =美元进行预测(兰德(0,strlen(进行预测美元)1)],
$substs = " ' ' .$tempstr;
$ = preg_replace(模式、路径替换美元,美元);
然而最终的结果是
$out = " %How ' %are ' %you."
它只随机选择1个并将它们全部更改为那个
<?php
function randomChar() {
$rand = "1234567890abcdefghijklmnopqrstuvwxyz";
return substr($rand, rand(0, strlen($rand)), 1);
}
echo preg_replace_callback("/`./", 'randomChar', "`bHello `!how `Qare `%you.");