[#37959] [Bug:trunk] I can modify literals — Yusuke ENDOH <mame@...>

遠藤です。

13 messages 2009/02/10

[#38005] Is URI.decode() broken? — MOROHASHI Kyosuke <moronatural@...>

もろはしです。いつもお世話になっております。

39 messages 2009/02/14
[#38006] Re: Is URI.decode() broken? — Nobuyoshi Nakada <nobu@...> 2009/02/14

なかだです。

[#38009] Re: Is URI.decode() broken? — "NARUSE, Yui" <naruse@...> 2009/02/14

成瀬です、

[#38016] Re: Is URI.decode() broken? — Fujioka <fuj@...> 2009/02/15

xibbarこと藤岡です。

[#38017] Re: Is URI.decode() broken? — "NARUSE, Yui" <naruse@...> 2009/02/15

成瀬です。

[#38040] Re: Is URI.decode() broken? — akira yamada / やまだあきら <akira@...> 2009/02/17

NARUSE, Yui さんは書きました:

[#38124] Re: Is URI.decode() broken? — "NARUSE, Yui" <naruse@...> 2009/03/03

成瀬です。

[#39214] Re: Is URI.decode() broken? — akira yamada / やまだあきら <akira@...> 2009/09/02

(2009年03月03日 22:45), NARUSE, Yui さんは書きました:

[#39218] Re: Is URI.decode() broken? — "NARUSE, Yui" <naruse@...> 2009/09/02

成瀬です。

[#39236] Re: Is URI.decode() broken? — Tanaka Akira <akr@...> 2009/09/05

In article <4A9E44DD.6050706@airemix.jp>,

[#39242] Re: Is URI.decode() broken? — KOSAKI Motohiro <kosaki.motohiro@...> 2009/09/07

小崎@思いつきを適当に書いてみるテスト

[#39246] Re: Is URI.decode() broken? — Tanaka Akira <akr@...> 2009/09/07

In article <20090907091830.2C7A.A69D9226@jp.fujitsu.com>,

[#38096] 多重代入やメソッド引数の展開でto_aが呼ばれます — nagachika <nagachika00@...>

nagachika と申します。

10 messages 2009/02/26

[#38098] ブロック引数と括弧・引数なしsuper — Shugo Maeda <shugo@...>

前田です。

12 messages 2009/02/27

[ruby-dev:38066] Re: ENCODING_FIXED と ENCODING_NONE の廃止

From: Tanaka Akira <akr@...>
Date: 2009-02-22 05:37:29 UTC
List: ruby-dev #38066
In article <499B4E60.9000703@airemix.jp>,
  "NARUSE, Yui" <naruse@airemix.jp> writes:

> しかし、//u 等に限って言えばそのような大きな問題ではなく、
> /a/u と同じことをできる方法が存在せず、UTF-8, EUC-JP, Windows-31J の
> 3 つのエンコーディングでしか使えない特殊な機能である点から、
> 局地的な問題だと思っています。
>
> そしてまず、直接的な問題としては、例えば、
>> Regexp.new(/a/u.source) == /a/u
> => false
> と、Regexp#source と Regexp#new で戻らない点があります。

戻すためには options も指定してください。

r = /a/u
r2 = Regexp.new(r.source, r.options)
p r2.fixed_encoding? #=> true

options は fixed_encoding だけでなく、//i など他の option を
保存するためにも必要です。

そして、これで戻ることからわかるように、任意のエンコーディン
グで fixed_encoding にすることも実は可能です。

p Regexp.new("a", 16).fixed_encoding? #=> true

16 というのを直接書くというのは変ではありますが、
Regexp::FIXEDENCODING という定数を作ることは簡単です。

> /a/u や /\w/u を非 ASCII な文字を含む場合なのでこれらについて考えると、

すいません。文章がよくわかりません。

> しかし、そのような機能は必要でしょうか。
> わたしは必要ないと思いますし、もし必要ならば他のエンコーディングにも提供するべきです。

現在も提供していないわけではありません。まともに提供するのも
簡単です。

また、//i についてはどうでしょうか。

/fi/ui は "\uFB01" とマッチします。
というのは U+FB01 は fi の合字だからですが、
/fi/ei と EUC-JP を明示したときにも "\uFB01" にマッチすべき
なんでしょうか。

> そして、すでに 1.8 用に書かれた /a/u 等もわざわざ UTF-8 等に限定する意図は
> なかったのではないかと思います。

そうは思いません。

> 現状、できごころで /u を付けてしまった正規表現リテラルから、
> /u を削るという不毛な作業が行われていますが、本当にそれは必要なんでしょうか。

この作業ってどこで起きてるんですか?

//n についてはたしかにあいまいな使いかたが多かったと思います。
だから、警告に弱めたのですが、それ以外は明確だったように感じ
ています。
-- 
[田中 哲][たなか あきら][Tanaka Akira]

In This Thread