Perl 正規表現の基本
入力された文字列にyesという文字が含まれているか調べるプログラム
my $str = <STDIN>; if ($str =~ /yes/) { print "Match!\n"; } else { print "No match\n"; }
$str =~ /yes/
という部分は、演算子=~
にて入力された文字列にyesが含まれているかどうかを調べる。
含まれていればMatch!
を返し、含まれていなければNo match
を返す。
大文字小文字は区別される為、Yes
のように大文字が含まれていると、No match
を返す事になる。
スペースについても文字とみなされる為、y es
などはNo match
が返される。
メタ文字
正規表現/yes/
では入力された文字列のどこにyes
が含まれていてもマッチした。
これをメタ文字^
を使用し/^yes/
とすると、文字列のはじめにyes
がマッチするかどうかを調べる。
入力された文字がyyes
やno yes
であればNo match
となりyesterday
やyes!!!!!!!!
などはMatch!
となる。
また、正規表現/yes$/
では、文字列の終わりとyes
がマッチするかどうかを調べる事になる。