如何查看字符串仅是否包含空格?
答案 0 :(得分:49)
if (strlen(trim($str)) == 0)
或者如果您不想包含空字符串,
if (strlen($str) > 0 && strlen(trim($str)) == 0)
答案 1 :(得分:5)
echo preg_match('/^ *$/', $string)
应该工作。
答案 2 :(得分:5)
来自:https://stackoverflow.com/a/2992388/160173
这将是最快的方式:
$str = ' ';
if (ctype_space($str)) {
}
在空字符串上返回false
,因为空不是空格。如果你需要包含一个空字符串,你可以添加|| $str == ''
这仍然会比正则表达式或修剪更快地执行。
作为一个功能:
function stringIsNullOrWhitespace($text){
return ctype_space($text) || $text === "" || $text === null;
}
答案 3 :(得分:3)
检查trim()的结果是否大于0
答案 4 :(得分:3)
使用正则表达式:
$result = preg_match('/^ *$/', $text);
如果你想测试任何空格,而不仅仅是空格:
$result = preg_match('/^\s*$/', $text);
答案 5 :(得分:3)
我认为使用正则表达式是过度的,但无论如何这里是另一个sol'n:
preg_match('`^\s*$`', $str)
答案 6 :(得分:1)
另一种方式
preg_match("/^[[:blank:]]+$/",$str,$match);
答案 7 :(得分:0)
chop($str) === ''
这应该足够了。
答案 8 :(得分:0)
如果您正在使用Ck编辑器,那么您应该这样做
if( strlen(trim($value,' ')) == 0 ){
echo "White space found!"
}
答案 9 :(得分:-1)
另一种方式,只是为了游戏
<?php
function is_space_str($str) {
for($i=0,$c=strlen($str);$i<$c;$i++) {
switch (ord($str{$i})) {
case 21:
case 9:
case 10:
case 13:
case 0:
case 11:
case 32:
break;
default:
return false;
}
}
return true;
}
答案 10 :(得分:-2)
在我的程序中,它像这样很好地工作,
$comment = $_POST['comment'];
$commentcheck = trim($comment);
if (empty($commentcheck))
{
//instruction with $comment
}
trim()函数只是删除$ comment字符串中的所有空格。 然后检查是否为空。 因此,在此if语句中,您必须显示一条错误消息,然后使用else编写您想要编写的任何内容。