Hi guys. I am trying to compare two strings and remove any characters that appear in second string. For example:
$stringA="abcdefg" ;
$stringB="ayfcghifh" ;
I want $stringB
to be "yhih"
. Are there any ways to do it?
Thanks for the help...
Hi guys. I am trying to compare two strings and remove any characters that appear in second string. For example:
$stringA="abcdefg" ;
$stringB="ayfcghifh" ;
I want $stringB
to be "yhih"
. Are there any ways to do it?
Thanks for the help...
Hey,
echo ereg_replace("[" . $stringA . "]", "", $stringB);
would be a convenient way to do so.
Or using preg_replace()
$stringB = preg_replace('/[' . preg_quote($stringA, '/') . ']/', '', $stringB);
As an added benefit, you can have case-insensitivity with the /i modifier and Unicode support with /u.
You can use multiple needles in str_replace()
to remove each character from $stringA
. Assuming we're talking about single-byte encoding, you can use str_split()
to separate each character, which gives you:
$stringB = str_replace(str_split($stringA, 1), '', $stringB)