[ruby-dev:48460] [ruby-trunk - Bug #9903] Regexp#[] doesn't consider capture name encoding

From: nagachika00@...
Date: 2014-08-03 16:21:19 UTC
List: ruby-dev #48460
Issue #9903 has been updated by Tomoyuki Chikanaga.

Backport changed from 2.0.0: REQUIRED, 2.1: REQUIRED to 2.0.0: REQUIRED, 2.1: DONE

Backported into `ruby_2_1` branch at r47052.

----------------------------------------
Bug #9903: Regexp#[] doesn't consider capture name encoding
https://bugs.ruby-lang.org/issues/9903#change-48179

* Author: Nobuyoshi Nakada
* Status: Closed
* Priority: Normal
* Assignee: 
* Category: 
* Target version: 
* ruby -v: r46343
* Backport: 2.0.0: REQUIRED, 2.1: DONE
----------------------------------------
Regexp#[]が引数の文字列やシンボルを考慮していません。

~~~ruby
key = "\xb1\xb2".force_encoding(Encoding::EUC_JP)
m = /(?<#{key}>.*)/.match("xxx")
p m[key.dup.force_encoding(Encoding::Shift_JIS)]
# => "xxx"
~~~



-- 
https://bugs.ruby-lang.org/

In This Thread

Prev Next