регулярное выражение для соответствия пустому (или весь пробел) строка

Несколько моих любимых вещей:

Добавленный в sp2 - Сценариях опций под инструментами/опциями/сценариями

Новая безопасность с помощью схем - создают две схемы: user_access, admin_access. Поместите своего пользователя procs в одного и Вашего администратора procs в другом как это: user_access.showList, admin_access.deleteUser. Предоставление ВЫПОЛНЯЕТ на схеме к Вашему пользователю приложения / роль. Больше ПРЕДОСТАВЛЕНИЯ НЕ ВЫПОЛНЯЕТСЯ все время.

использование Шифрования, созданное в функциях шифрования, представления (для дешифрования для представления), и базовые таблицы с триггерами (для шифрования на вставляют/обновляют).

6
задан Brad Mace 9 July 2011 в 07:35
поделиться

6 ответов

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

if ( Trim ( $str ) === '' ) echo 'empty string';
17
ответ дан 8 December 2019 в 03:39
поделиться

Проверка длины обрезанной строки или сравнение обрезанной строки с пустой строкой, вероятно, является самым быстрым и легким для чтения, но в некоторых случаях вы не может использовать это (например, при использовании фреймворка для проверки, который принимает только регулярное выражение).

Поскольку никто еще не опубликовал рабочее регулярное выражение ...

if (preg_match('/\S/', $text)) {
    // string has non-whitespace
}

или

if (preg_match('/^\s*$/', $text)) {
    // string is empty or has only whitespace
}
9
ответ дан 8 December 2019 в 03:39
поделиться
if (preg_match('^[\s]*$', $text)) {
    //empty
} 
else {
    //has stuff
}

, но вы также можете выполнить

if ( trim($text) === '' ) {
    //empty
}

Edit : обновлено регулярное выражение для соответствия действительно пустой строке - по нику (спасибо!)

2
ответ дан 8 December 2019 в 03:39
поделиться
if(preg_match('^[\s]*[\s]*$', $text)) {
    echo 'Empty or full of whitespaces';
}

^ [\ s] * означает, что текст должен начинаться с нуля или больше пробелов и [\ s] * $ означает, что они должны заканчиваться нулем или более пробелов, так как выражения "ноль или более", они также соответствуют пустым строкам.

1
ответ дан 8 December 2019 в 03:39
поделиться

Вам действительно не нужно регулярное выражение

if($str == '') { /* empty string */ }
elseif(trim($str) == '') { /* string of whitespace */ }
else { /* string of non-whitespace */ }
0
ответ дан 8 December 2019 в 03:39
поделиться

Выражение \ A \ s * + \ Z

-1
ответ дан 8 December 2019 в 03:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: