Если строка содержит только пробелы? - PullRequest
40 голосов
/ 01 марта 2010

Как я могу проверить, содержит ли строка only пробелы?

Ответы [ 11 ]

50 голосов
/ 01 марта 2010
if (strlen(trim($str)) == 0)

или, если вы не хотите включать пустые строки,

if (strlen($str) > 0 && strlen(trim($str)) == 0)
5 голосов
/ 19 июня 2013

от: https://stackoverflow.com/a/2992388/160173

Если вы хотите поднять голос, сделайте это на другом ответе , а не на этом!


Это будет самый быстрый способ:

$str = '      ';
if (ctype_space($str)) {

}

Возвращает false для пустой строки, потому что empty не является пробелом. Если вам нужно включить пустую строку, вы можете добавить || $str == '' Это все равно приведет к более быстрому выполнению, чем регулярное выражение или усечение.

ctype_space


как функция:

function stringIsNullOrWhitespace($text){
    return ctype_space($text) || $text === "" || $text === null;
}
5 голосов
/ 01 марта 2010
echo preg_match('/^ *$/', $string)

Должно работать.

3 голосов
/ 01 марта 2010

Я думаю, использование регулярных выражений - это излишне, но в любом случае вот еще один вариант:

preg_match('`^\s*$`', $str)
3 голосов
/ 01 марта 2010

Используйте регулярное выражение:

$result = preg_match('/^ *$/', $text);

Если вы хотите проверить любые пробелы, а не только пробелы:

$result = preg_match('/^\s*$/', $text);
3 голосов
/ 01 марта 2010

проверить, если результат trim () длиннее 0

1 голос
/ 01 марта 2010

другой способ

preg_match("/^[[:blank:]]+$/",$str,$match);
0 голосов
/ 07 января 2019

в моей программе это работало так,

$comment = $_POST['comment'];
$commentcheck = trim($comment);

if (empty($commentcheck)) 
{
    //instruction with $comment
}

Функция trim () просто удаляет все пробелы из строки $ comment. Затем проверьте, пусто ли оно. Таким образом, в этом операторе if вы должны показать сообщение об ошибке, а затем использовать другое для кодирования того, что вы хотите написать.

0 голосов
/ 25 июня 2014

Если вы используете Ck-редактор, то вам следует сделать это

if( strlen(trim($value,' ')) == 0 ){
    echo "White space found!"
}
0 голосов
/ 07 апреля 2014
chop($str) === ''

Этого должно быть достаточно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...