我正在尝试比较两个字符串并删除第二个字符串中出现的任何字符。 例如:
$stringA="abcdefg" ;
$stringB="ayfcghifh" ;
我希望$ stringB
为"yhih"
。有什么办法吗?
谢谢你的帮助...
答案 0 :(得分:6)
str_replace(str_split($stringA),'',$stringB);
答案 1 :(得分:3)
echo ereg_replace(“[”。$ stringA。“]”,“”,$ stringB);
是一种方便的方法。
或使用preg_replace()
$stringB = preg_replace('/[' . preg_quote($stringA, '/') . ']/', '', $stringB);
作为一个额外的好处,你可以使用/ i修饰符和/ u支持Unicode支持不区分大小写。
答案 2 :(得分:2)
您可以在str_replace()
中使用多个针从$stringA
中删除每个字符。假设我们讨论的是单字节编码,您可以使用str_split()
分隔每个字符,这样就可以了:
$stringB = str_replace(str_split($stringA, 1), '', $stringB)