how can i parse a string to remove all non english characters in php
right now I want to remove things like
სოფო ნი�
Thanks :)
$str = preg_replace('/[^\00-\255]+/u', '', $str);
Your best option would be using iconv
, which converts strings to requested character encoding.
iconv('UTF-8', 'ASCII//TRANSLIT', $yourtext);
with //translit
you get a meaningful conversion to ASCII (e.g. ß -> ss). Using //IGNORE will strip non-ascii characters altogether.
iconv('UTF-8', 'ASCII//IGNORE', $yourtext);
See http://php.net/manual/en/function.iconv.php
By using preg_replace()
$string = "some სოფო text";
$string = preg_replace('/[^a-z0-9_ ]/i', '', $string);
echo $string;
Granted, you will need to expand the preg_replace pattern, but that is one way to do it. There is probably a better way, I just do not know it.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With