Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Общие вопросы > Проверка переменной на содержание пробелов


Автор: n0xi0uzz 3.3.2005, 07:49
Нужно проверить, содержаться ли в переменной не_пробелы (то есть, есть ли все знаки, кроме пробела). Не подскажете, как?

Автор: korob2001 3.3.2005, 09:19
Если пробелы вобще не допустимы, то воспользуйся такой проверкой:
Код

my $str = "Hello, world!";

if ( $str =~ /\s+/ ) {
    print "В строке есть пробел\n";
} else {
    print "Строка не содержит пробелы\n";
}

а если ты хочешь проверить не состоит ли строка только из пробелов, то такой способ подойдёт:
Код

use strict;
my $str = "      ";

if ( $str =~ /^\s+$/ ) {
    print "Строка состоит только из пробелов\n";
} else {
    print "В строке не только пробелы\n";
}

Удачи.

Автор: dimes 3.3.2005, 11:01
Цитата(korob2001 @ 3.3.2005, 10:19)
\s

Это это не пробел а "пробельный символ" т.е. пробелл, табуляция, перевод строки и т.д.
Для такой простой задачи РВ вообще не нужны

проще зделать так

Код

if ( index($str,' ')!=-1 ) {
    print "В строке есть пробел\n";
}


или

Код

if ( index($str,' ')==-1 ) {
    print "В строке нет пробелов\n";
}

Автор: n0xi0uzz 3.3.2005, 11:09
так мне надо проверить, не состоит ли строка только из пробелов.
а что такое PB?

Автор: korob2001 3.3.2005, 11:12
Регулярные выражения.

Автор: dimes 3.3.2005, 11:13
Цитата(n0xi0uzz @ 3.3.2005, 12:09)
а что такое PB?

Регулярные Выражения.

Цитата(n0xi0uzz @ 3.3.2005, 12:09)
так мне надо проверить, не состоит ли строка только из пробелов.

Тогда проще зделать как написал korob2001

Автор: n0xi0uzz 3.3.2005, 11:16
Цитата(dimes @ 3.3.2005, 11:13)
Тогда проще зделать как написал korob2001

так и сделал, спасибо ;)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)