Forum Webscript.Ru
Программирование => Perl => Тема начата: Boatman от 04 Августа 2002, 10:59:00
-
Как сделать отрицание целого слова? с отдельными символами понятно
[^a-z]
А что нибудь типа ^(слово)?
Что-то я торможу наверное
-
$_=\' test \';
if(m/^\\s(?!\\btest\\b)\\S/){
print "$_\\n";
}
$_=\' test2 \';
if(m/^\\s(?!\\btest\\b).*\\s/){
print "$_\\n";
}
$_=\'ю юю умныйдурак O KAK\';
if(m/ю юю(?!.*дурак).*/){
print "$_\\n";
}
$_=\'ю юю умный О КАК\';
if(m/ю юю(?!.*дурак).*/){
print "$_\\n";
}
тут на задачу нужно смотреть!
Или вас интересовал такой тривиальный вопрос
[^a-zA-z]+
$_=\'word\';
if (/[^a-zA-z]+/){
print $_;
}
$_=\'123456\';
if (/[^a-zA-z]+/){
print $_;
}
Да если вы скажите ююю дурак я даже спорить не буду :)
-
Я не буду унижаться до перебранки с хамами, а для нормальных людей поясню - нужен шаблон типа «НЕ (определенное_слово)» например, чтобы если в строке нет слова «идиот».
-
>нужен шаблон типа «НЕ (определенное_слово)» например, чтобы если в строке нет слова «идиот».
Вот он
$_=\'ю юю умный О КАК\';
if(m/ю юю(?!.*дурак).*/){
print "$_\\n";
}
-
Ну или так
$_=\'умный О КАК\';
if(m/^(?!.*дурак).*/){
print "$_\\n";
}
ПС А где вы видеите проблему с хамами :) Или расписыватся в собственной глупости(что я и зделала ) вы считаете хамством Ну тогда извените
-
Да можете поинттерисоватся такими онструкциями
(?!шаблон)
(?=шаблон)
-
Мне кажется, можно пойти методом "от противного", то есть проверять ЕСТЬ ли в строке данное слово. Это же проще! Например, проверяем слово "круг":
if($my_text =~ /круг/){
&krug_yes;
}else{
&krug_no;
}
-
есть же конструкция !~ ...
$string = \'I am a good boy\';
print "YES" if $string !~ /idiot/;
напечатает YES, т.к. в строке нет слова idiot.
Или
print "YES" unless $string =~ /idiot/;
тот же результат...