用一个“_”代替空格

时间:2013-10-22 13:27:54

标签: php codeigniter

我试图用一个下划线替换所有连续的空格;我可以轻松地用" _"替换一个空格。使用以下代码行:

str_replace(" ", "_",$name);

Evan我可以用" _"替换一个空格按照以下代码行:

str_replace("  ", "_",$name);

但问题是我不知道有多少空格我要检查!

如果我的问题不明确,请告诉我您需要进一步澄清的部分。

由于

4 个答案:

答案 0 :(得分:6)

可能是最干净,最易读的解决方案:

preg_replace('/[[:space:]]+/', '_', $name);

这将用一个下划线替换所有空格(无论多少)。

答案 1 :(得分:3)

您可以使用正则表达式完成此操作:

[ ]+

这将匹配“一个或多个空格字符”;如果你想要“任何空格”(包括标签),你可以使用\s+

使用PHP的preg_replace()

$name = preg_replace('/[ ]+/', '_', $name);

答案 2 :(得分:2)

使用preg_replace()

$name = preg_replace('/ +/', '_', $name);
正则表达式中的

+表示“重复1次或更多次”,因此这将匹配[SPACE]以及[SPACE][SPACE][SPACE]

答案 3 :(得分:0)

您可以使用正则表达式:

$name = preg_replace("#\s+#", "_", $name);