バージョンごとの表の絵文字は以下の意味です 使用可能 使用可能だが致命的な性能劣化を招くため忌避される (空欄) 対応前バージョン Perl 5.20 以降なら $& による方法が一番簡単ですが、それ以前のバージョンでの経緯を知っているチームメンバーから拒絶反応を受ける可能性もあります。そのプログラムが今後 Perl 5.20 より前のバージョンで実行する必要が一切ないと言えるなら $& でも問題ないと思いますが、外部公開するモジュールなどの場合は use v5.20 等で明言しないのであれば $& の使用は避けておくべきでしょう。 それぞれの手法 マッチ全体をキャプチャのカッコでくくって $1 で参照する方法 今も伝統的に行われている、マッチ全体をキャプチャのカッコでくくる方法です。 # $body から a か A で始まる単語を取り出して $match に入れる # \b は単語境界
![Perl の正規表現でマッチした文字列自体を取得する今昔 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/137fe56f6b7d47232f7283b9961d6673e02d5b39/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9UGVybCUyMCVFMyU4MSVBRSVFNiVBRCVBMyVFOCVBNiU4RiVFOCVBMSVBOCVFNyU4RiVCRSVFMyU4MSVBNyVFMyU4MyU5RSVFMyU4MyU4MyVFMyU4MyU4MSVFMyU4MSU5NyVFMyU4MSU5RiVFNiU5NiU4NyVFNSVBRCU5NyVFNSU4OCU5NyVFOCU4NyVBQSVFNCVCRCU5MyVFMyU4MiU5MiVFNSU4RiU5NiVFNSVCRSU5NyVFMyU4MSU5OSVFMyU4MiU4QiVFNCVCQiU4QSVFNiU5OCU5NCZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnM9ZTEzYjM5YjIzNDhkODhhMjFhMzVmZGRhZTIzMzYzYjI%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDB4dGV0c3VqaSZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9NjNhM2Q3ZGZiMWM2MWI0YWE0MWVkMzdiY2JkNmJkYjU%26blend-x%3D142%26blend-y%3D486%26blend-mode%3Dnormal%26s%3D9255b16943046d0e03b8c5eeab895485)