2017-08-19 19 views
1

私は次のように出くわしたと私はそれが何を意味するのかわからないよ:ドル記号+ Perl?

$+{decimal} 

私はPerlで$の使用に精通しているんだけど、それは前にプラス記号が続い見ていません。

単語decimalはスクリプト内のどこにも定義されていません。

誰かが$+{ }の構文を説明できますか?

答えて

4

チェック@+と同様に

perlvar%+ハッシュ変数、%+ハッシュは、彼らが現在アクティブな動的スコープで最後に成功した試合では、存在しなければならない、という名前のキャプチャバッファへのアクセスを可能にするため。

例えば、$+{foo}は以下の試合後$1と同等です:あなたはドキュメントからコピーして貼り付ける実現

'foo' =~ /(?<foo>foo)/; 
+0

、私はfoo'がために使用されている '以降の例では、混乱につながると思います文字列、パターン、および名前付きキャプチャ変数。この例では、 '$ + {foo}'がどこから始まったかを区別するのが良いでしょう。これは ''部分です。 – vol7ron

+1

いくつかの改善のメリットがあると思います。 –

+0

はい、おそらく文字列とパターンは 'bar'を使用する必要があります(私の理解が間違っていない限り、完全に可能です。 – vol7ron

関連する問題