現在、私はPerls RegExpsをカバーしており、全体的に私はそれを理解しています。文字をエスケープする私はまた、バックスラッシュを進める必要があるという点でバックスラッシュをテストすると考えています。この例ではperlに最初に\を付けて、それを通常の意味。このPerl正規表現で@記号がエスケープされているのはなぜですか?
私が持っている以下のコードでは分かりませんが、このパターンは一致しています。@記号の付いた電子メールアドレスをテストするときにはなぜ(\)が使われますか?私はエスケープを必要とする特殊文字は気付かないか、何かを逃したことがありますか?
#!/usr/bin/perl
EMAIL:
{
print("Please enter your email address: ");
$email = <STDIN>;
if ($email !~ /\@/)
{
print("Invalid email address.\n");
redo EMAIL;
}
else
{
print("That could be a valid email address.");
}
}
「/ @ /」は '/ \ @ /'と同じ意味を持ちます。しかし注意してください: '/ @ x /'は '/ \ @ x /'とは非常に異なっています。 – aschepler
ああ、私はさらに読むことがありますが、私はそれを覚えています。あなたの援助に感謝します!!私はそれを解決しようと努力するために努力しましたが、尋ねることなく、頼むことや怠惰を求めるために私は苦労していました。もう一度お返事します –
Heh、 '@ x'への参照に一致させたい場合はどうしますか? :)それをスカラーに割り当てて、それほど巧妙であることをやめよう! – mkb