[ruby-list:50671] Re: [質問] キャプチャ付き正規表現の後方参照
From:
dogatana <dogatana@...>
Date:
2018-06-04 03:24:52 UTC
List:
ruby-list #50671
こんにちは、市田です。
2018年6月3日 0:21 Takahiro Yamaguchi <yamataka@u08.itscom.net>:
> $ cat regex.rb
> tbl_cmd = [
> { regexp: '^ *v +(\d+) *$',
> cmd: ":direct #{$1}"},
> ]
> p c[:cmd] の、c[:cmd] の、$1 部分、
> でキャプチャした内容を後方参照できずに、悩んでいます。
":direct #{$1}" の中の$1 はtbl_cmd の定義を「実行」する際に展開されるためでは?
式展開の実行そのものを遅延させるには eval が利用できそうですが、ユーザの入力をそのまま
式展開するような使用方法は危険なため、一般には推奨されないと思います。