我正在从 MySQL 数据库中获取 $row['message']
,我需要删除所有空格,例如 \n
\t
等等。
$row['message'] = "This is a Text \n and so on \t Text text.";
应格式化为:
$row['message'] = 'This is a Text and so on Text text.';
我试过了:
$ro = preg_replace('/\s\s+/', ' ',$row['message']);
echo $ro;
但它不会删除 \n
或 \t
,只是单个空格。谁能告诉我该怎么做?
最佳答案
你需要:
$ro = preg_replace('/\s+/', ' ', $row['message']);
您正在使用 \s\s+
表示空格(空格、制表符或换行符)后跟一个或多个空格。这实际上意味着用一个空格替换两个或多个空格。
您想要的是用单个空格替换一个或多个空格,因此您可以使用 \s\s*
或 \s+
模式(推荐)
关于php - 删除多个空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2326125/