代码之家  ›  专栏  ›  技术社区  ›  homework

检查字符串的空白

  •  2
  • homework  · 技术社区  · 15 年前

    有什么方法可以检查空白吗?

    例如,我 要检查空白区域,如…

    $string = "The dog ran away!"; 并输出 Thedogranaway!

    我想检查一下入口是否在那里 所有 仅限空白和空白? …并让它输出错误!

    基本上,我不想输入所有的空白,仍然让它执行mysql_查询。
    另外,有没有一种方法可以去掉字符串前的所有空白,而不是字符串其余部分的空白?

    $string = " "WHITESPACE HERE" The dog ran away!";

    if(empty($string) OR $string == " "){ // crappy example of what i'm trying to do
    echo "Try again, please enter a message!"; // error
    } else {
    mysql_query("UPDATE users SET mesg='$string'")or die(mysql_error()); // do something
    echo $post;
    }
    
    5 回复  |  直到 13 年前
        1
  •  6
  •   GZipp    15 年前

    还有ctype_空间(最简单的,imo,可以做到这一点,而不需要做一些不必要的字符串操作):

    $str = "   \r\n   \t  ";
    if (ctype_space($str)) {
        echo 'All whitespace';
    }
    // All whitespace
    
        2
  •  7
  •   James McNellis    15 年前

    怎么样:

    if (strlen(trim($string)) == 0)
    

    或者,可能更有效:

    if (trim($string) == '')
    

    或者,可以使用正则表达式:

    if (preg_match("/^\s+$/", $string) != 0)
    
        3
  •  2
  •   Galen    15 年前
    if ( trim($string) ) {
        // string contains text
    }
    else {
        // string contains only spaces or is empty
    }
    
        4
  •  1
  •   nandokakimoto    15 年前

    也许您正在寻找trim()方法。 在Java中,它将是String。我不知道它在PHP中应该是什么样子,但是这个链接可能有帮助 http://php.net/manual/en/function.trim.php

        5
  •  1
  •   jaywon    15 年前

    可以对空字符串使用trim()函数:

    if (strlen(trim($string)) == 0){
       //do something
    }else{
      // do something else
    }
    

    修剪前导空白:

    ltrim($string)
    

    在上一个示例中 " This is text" 将返回“这是文本”。阿尔索 三() 会达到同样的结果,但是 修剪() 删除字符串前后的空白。