3 ответов:
чтобы узнать, содержит ли строка подстроку, вы можете использовать
indexфункция:if (index($str, $substr) != -1) { print "$str contains $substr\n"; }он вернет позицию первого вхождения
$substrна$str, или -1, если подстрока не найдена.
еще одна возможность-использовать регулярные выражения вот чем славится Perl:
if ($mystring =~ /s1\.domain\.com/) { print qq("$mystring" contains "s1.domain.com"\n); }символы необходимы, потому что
.может соответствовать любому символу. Вы можете обойти это с помощью\Qи\Eоператоры.my $substring = "s1.domain.com"; if ($mystring =~ /\Q$substring\E/) { print qq("$mystring" contains "$substring"\n); }или, вы можете сделать как Евгений y указано и использовать индекс
Пример Подстроки Без Учета Регистра
Это ответ Евгению, который преобразует строки в нижний регистр перед проверкой подстрока:
if (index(lc($str), lc($substr)) != -1) { print "$str contains $substr\n"; }
Comments