Ruby のセーフ ナビゲーション オペレーターで [] を使用する
概要
現在、次のようなコードがあります。
if match = request.path.match(/\A\/(?<slug>(?!admin|assets)\w+)/)
match[:slug]
end
条件付きの場合、セーフ ナビゲーション オペレーター (2.3.0 で導入) を使用してこれを回避する方法はありますか?
解決策
通常の(砂糖を含まない)形を使用してください。
request.path.match(/\A\/(?<slug>(?!admin|assets)\w+)/)&.[](:slug)