我试图从html内容中移除PHP中的所有空格,如果它超过一个,例如这样的链:
{{IMG}} {{IMG}} {{IMG}} {{IMG}} {{IMG}}
但不应影响如下句子:关于我们。
是否应该使用正则表达式?有什么想法吗?
PS:变量已经与trim()一起使用;它会删除结尾和开头的空白区域,但不会删除字符之间的空格......
非常感谢你的帮助。
答案 0 :(得分:2)
$str = preg_replace('/\s+/', ' ', $originalString);
echo $str;
这将用一个空格替换所有空格。
答案 1 :(得分:0)
你可以这样做:
示例1:如果空格大于1,则删除空格
<?php
# Test variable
$string = "HELLO I HAVE WHITE SPACEEE!!1";
# Count all whitespaces
# Contains more than 1 whitespace
if(substr_count($string, ' ') > 1) {
# Example 1: Remove the whitespaces
$string = preg_replace('/\s+/', '', $string);
}
# Ouput: HELLOIHAVEWHITESPACEEE!!1
echo $string;
?>
示例2:修剪空格
<?php
# Test variable
$string = "HELLO I HAVE WHITE SPACEEE!!1";
# Count all whitespaces
# Contains more than 1 whitespace
if(substr_count($string, ' ') > 1) {
# Example 2: Remove the whitespaces
$string = trim($string);
}
# Ouput: HELLO I HAVE WHITE SPACEEE!!1
echo $string;
?>
示例3:替换空格
<?php
# Test variable
$string = "HELLO I HAVE WHITE SPACEEE!!1";
# Count all whitespaces
# Contains more than 1 whitespace
if(substr_count($string, ' ') > 1) {
# Example 1: Replace the whitespaces
$string = preg_replace('/\s+/', ' ', $string);
}
# Ouput: HELLO I HAVE WHITE SPACEEE!!1
echo $string;
?>
示例4:
<?php
# Test variable
$string = "HELLO I HAVE WHITE SPACEEE!!1 And I like bananas.";
# Count all whitespaces
# Contains more than 1 whitespace
if(substr_count($string, ' ') > 1) {
# Example 1: Replace the whitespaces
$string = preg_replace('/\s\s+/', '', $string);
}
# Ouput: HELLOIHAVEWHITESPACEEE!!1 And I like bananas.
echo $string;
?>
答案 2 :(得分:0)
如果你问我,这是一个相当离奇的请求。
你可能会做一些事情(从接受的答案中采用,以防其他人认为它有用):
$str = preg_replace('/\s\s+/', '', $originalString);
这将删除所有空格,前提是它们中至少有两个空格。