我想用另一個隨機字符替換字符串ABC123EFG
中的每個數字。
我的想法是用$str
中的所有數字生成一個隨機字符串,並將每個數字替換爲$array[count_of_the_digit]
,有沒有辦法在沒有for循環的情況下執行此操作,例如使用正則表達式?用隨機字符替換字符串中的每個數字
$count = preg_match_all('/[0-9]/', $str);
$randString = substr(str_shuffle(str_repeat("abcdefghijklmnopqrstuvwxyz", $count)), 0, $count);
$randString = str_split($randString);
$str = preg_replace('/[0-9]+/', $randString[${n}], $str); // Kinda like this (obviously doesnt work)
我想不出任何你會得到一串沒有循環的隨機字符串。你爲什麼不想使用循環? (這是否只是我,還是有時似乎有人告訴新的程序員,循環是壞的?) – alanlittle
它不是循環是壞的,它似乎可以用正則表達式或類似的東西乾淨地完成 – nn3112337