の意味は何ですかs#^.*/##s
。パターンで'.'は、\n.
then'.*は、ランダムな文字の乱数を表す必要があります。
しかし、本では、これはすべてのUNIXタイプのパスを削除すると述べています。
私の質問は、ランダム文字の乱数をスペースで置き換えることができるということですか?
s -> 置換 # -> パターン区切り ^.* -> すべての文字 先頭から 0 回以上 / -> 文字通り / ## -> 何も置換しない (区切り文字 2 つ) s -> 単一行モード (ドットは改行に一致します)
少し衒学を許してください。しかし、私はこれを見続けており、正しく理解することが重要だと思います.
s#^.*/##s正規表現ではありません。
^.*正規表現です。
s///置換演算子です。
置換演算子は 2 つの引数を取ります。1 つ目は正規表現です。2 つ目は置換文字列です。
置換演算子 (Perl の他の多くの引用符のような演算子と同様) を使用すると、使用する区切り文字を変更できます。
置換s###演算子でもあります(の#代わりに使用するだけです/)。
s#^.*/##は、「正規表現に一致するテキストを見つけて^.*/、空の文字列に置き換えることを意味します。最後の は、他のすべての文字と同様に「\n」sに一致するように正規表現を変更するオプションです。.