2013-07-09 248 views
0

我想检查一下给定的字符串是否包含任何字符或者是否只是全部空格。我怎样才能做到这一点?检查一个字符串是否包含任何字符

我曾尝试:

$search_term= " "; 

if (preg_match('/ /',$search_term)) { 
    // do this 
} 

但这种影响是这样的搜索字词,以及:

$search_term= "Mark Zuckerburg"; 

我只想要检查所有的空白,并没有角色的条件。

谢谢!

+0

修剪它。如果修剪过的字符串的长度为0,那么它就是全部空格。有一些其他的字符,否则:) – Fallen

+0

可能重复的[如何检查PHP中是否只有空格字符串?](http://stackoverflow.com/questions/1754393/how-to-check-if-there-are - 只 - 空间 - 在串式的PHP) –

回答

3

使用trim()

if(trim($search_term) == ''){ 
    //empty or white space only string 
    echo 'Search term is empty'; 
} 

trim()将削减空格从两个开始和结束字符串 - 所以,如果字符串包含只有空白微调,将返回空字符串。

3

ctype_space这样做。

$search_term = " "; 

if (ctype_space($search_term)) { 
    // do this 
} 

你的正则表达式不工作的原因是它没有锚定在任何地方,所以它在任何地方搜索。正确的正则表达式可能是^\s+$

ctype_spacetrim之间的差异在于ctype_space返回false为空字符串。使用适当的东西。 (或ctype_space($search_term) || $search_term === '' ...)

相关问题