在PHP上删除字符串左右两侧的空格
我总是遇到一些问题,字符串中充满了奇怪的字符,这些字符不是空格,但它们确实算作字符串的一个元素。如何从字符串中删除所有这些字符(不删除内部空格) 我使用preg_replace,但它消除了我想要保留的内部空间在PHP上删除字符串左右两侧的空格,php,string,preg-replace,Php,String,Preg Replace,我总是遇到一些问题,字符串中充满了奇怪的字符,这些字符不是空格,但它们确实算作字符串的一个元素。如何从字符串中删除所有这些字符(不删除内部空格) 我使用preg_replace,但它消除了我想要保留的内部空间 $string = preg_replace('/\s+/', '', $string); Php显示“我的字符串”有40个元素 string(40)=>" My string " 它应该只有9个,就像这样: string(9)=>"My string" str
$string = preg_replace('/\s+/', '', $string);
Php显示“我的字符串”有40个元素
string(40)=>"
My string
"
它应该只有9个,就像这样:
string(9)=>"My string"
str_replace("\r", "", $string);
str_replace("\t", "", $string);
str_replace(char(10), "", $string);
单词开头和结尾的空格不是feed、enter或tab,因为我使用了string replace,如下所示:
string(9)=>"My string"
str_replace("\r", "", $string);
str_replace("\t", "", $string);
str_replace(char(10), "", $string);
你可以试试修剪功能 范例
$bad_text = "\t\tWhitespace is bad!!! ";
var_dump($bad_text);
$good_text = trim($bad_text);
var_dump($good_text);
它不起作用,测试仍然很糟糕。有一些垃圾我不能用trim消除。你能举一个你试图处理的字符串的例子吗?额外的字符是空白还是空白?标题是“删除空白”,但你的问题是“不是空白的奇怪字符”。角色是什么?您可以执行
echo ord($string[$i])
以查看字符串中字符$i
的字符代码。