※ ChatGPTを利用し、要約された質問です(原文:正規表現について基本的な質問)
正規表現について基本的な質問
このQ&Aのポイント
Perl超初心者です。正規表現について基本的な質問です。
前回のテクニカルエンジニア・セキュリティの試験に記載されたソースコードについて理解できない部分があります。
特に、正規表現のパターンマッチングで使用されている「$sid_time =~ /..$/;」という行について疑問があります。
Perl超初心者です。
前回のテクニカルエンジニア・セキュリティの試験に以下のソースが記載されました。
sub make_sid {
my ($user_ID) = @_;
my enc_key = "4f583....";
my $sid, $salt, $sid_time;
$sid_time = now;
$sid_time =~ /..$/;
$salt = $s;
$sid = encrypt($user_ID, $salt . $enc_key);
$sid = $sid . $sid_time ;
$sid = $sid . make_hash($sid);
return $sid . $sid;
}
$sid_time =~ /..$/;
この行の意味が理解できないのです。
正規表現で、「2文字あれば真」という意味に思えるのですが、後続の処理に全く影響しないように思えます。
正規表現がまだよくわかっていないため、勘違いしているのでしょうか。
お礼
回答ありがとうございます。 > $salt = $&; おっしゃる通りです。 $saltを表示してみてわかりました。 正規表現で一致した文字列が入るのですね。 ありがとうございました。