[#38121] regex performace tuning and ABI compatibility — Yukihiro Matsumoto <matz@...>
まつもと ゆきひろです
13 messages
2009/03/03
[#38125] Request for plans to break compatibility; Was: Re: regex performace tuning and ABI compatibility
— "Yugui (Yuki Sonoda)" <yugui@...>
2009/03/03
Yuguiです。
[#38129] Re: Request for plans to break compatibility; Was: Re: regex performace tuning and ABI compatibility
— Nobuyoshi Nakada <nobu@...>
2009/03/04
なかだです。
[#38128] Re: regex performace tuning and ABI compatibility
— Nobuyoshi Nakada <nobu@...>
2009/03/04
なかだです。
[#38131] Bug when daemonizing — rubikitch@...
るびきちです。
6 messages
2009/03/04
[#38145] MSの方との相談に先立って — masayoshi takahashi <maki@...>
高橋征義です。どこに投げるのがベストか判断つかなかったので、
7 messages
2009/03/11
[#38153] [feature:trunk] warning when Kernel#p is used — Yusuke ENDOH <mame@...>
遠藤です。
7 messages
2009/03/11
[#38191] big time — Tanaka Akira <akr@...>
思い立って、time_t を越える範囲を Time で扱うことに挑戦して
31 messages
2009/03/27
[#38198] Re: big time
— Yukihiro Matsumoto <matz@...>
2009/03/28
まつもと ゆきひろです
[#38194] Re: big time
— Tadayoshi Funaba <tadf@...>
2009/03/28
> 思い立って、time_t を越える範囲を Time で扱うことに挑戦して
[#38196] Re: big time
— Tanaka Akira <akr@...>
2009/03/28
In article <[email protected]>,
[#38202] Re: big time
— Urabe Shyouhei <shyouhei@...>
2009/03/29
卜部です。
[#38205] Re: big time
— Tanaka Akira <akr@...>
2009/03/29
In article <[email protected]>,
[#38214] Re: big time
— Urabe Shyouhei <shyouhei@...>
2009/03/30
Tanaka Akira さんは書きました:
[#38215] Re: big time
— Tanaka Akira <akr@...>
2009/03/30
In article <[email protected]>,
[#38216] Re: big time
— Urabe Shyouhei <shyouhei@...>
2009/03/30
卜部です。
[#38227] Re: big time
— Tanaka Akira <akr@...>
2009/03/31
In article <[email protected]>,
[#38234] Re: big time
— Urabe Shyouhei <shyouhei@...>
2009/04/01
Tanaka Akira さんは書きました:
[#38242] Re: big time
— Tanaka Akira <akr@...>
2009/04/01
In article <[email protected]>,
[#38245] Re: big time
— Urabe Shyouhei <shyouhei@...>
2009/04/01
卜部です。
[#38267] Re: big time
— Tanaka Akira <akr@...>
2009/04/03
In article <[email protected]>,
[#38218] rinda/eval.rb — Masatoshi SEKI <m_seki@...>
咳といいます。
20 messages
2009/03/30
[#38219] Re: rinda/eval.rb
— Tanaka Akira <akr@...>
2009/03/31
In article <[email protected]>,
[#38223] Re: rinda/eval.rb
— Masatoshi SEKI <m_seki@...>
2009/03/31
咳といいます。
[#38229] Re: rinda/eval.rb
— "U.Nakamura" <usa@...>
2009/04/01
こんにちは、なかむら(う)です。
[#38233] Re: rinda/eval.rb
— Tanaka Akira <akr@...>
2009/04/01
In article <[email protected]>,
[#38259] Re: rinda/eval.rb
— Yukihiro Matsumoto <matz@...>
2009/04/03
まつもと ゆきひろです
[#38222] *BSD で fork できない理由 — "KISHIMOTO, Makoto" <[email protected]>
きしもとです
12 messages
2009/03/31
[#38230] Re: *BSD で fork できない理由
— "Akinori MUSHA" <knu@...>
2009/04/01
At Tue, 31 Mar 2009 18:48:46 +0900,
[#38232] Re: *BSD で fork できない理由
— Urabe Shyouhei <shyouhei@...>
2009/04/01
卜部です。
[#38235] Re: *BSD で fork できない理由
— Tanaka Akira <akr@...>
2009/04/01
In article <[email protected]>,
[#38236] Re: *BSD で fork できない理由
— Urabe Shyouhei <shyouhei@...>
2009/04/01
Tanaka Akira さんは書きました:
[#38238] Re: *BSD で fork できない理由
— "KISHIMOTO, Makoto" <[email protected]>
2009/04/01
きしもとです
[ruby-dev:38127] Re: ENCODING_FIXED と ENCODING_NONE の廃止
From:
Tanaka Akira <akr@...>
Date:
2009-03-03 17:09:39 UTC
List:
ruby-dev #38127
In article <[email protected]>, "NARUSE, Yui" <[email protected]> writes: > 必要ならば定数を作った方がいいのでしょうね。 もう作ってしまいました。 > うーん、それってレイヤーが違うような気がします。 > > 例えば、 > /ss/ui =~ "\u00df".encode("iso-8859-1") > はマッチしてもいいと思いますが、 > # Unicode の U+0000 から U+00FF までは ISO-8859-1 と一致するはずだし > ignorecase の挙動に関してはエンコーディングとは > 別のレイヤーで処理するべきかと感じます。 > # やるかは別として、Regexp::IGNORECASE_COMBINE を作りつつ、 > # エンコーディングごとにデフォルトを変えるとか レイヤが違うといわれても oniguruma はエンコーディングのとこ ろでやってますし。 > ちょっとずれますが、 > /\s/ =~ "\u3000" #=> 0 > /\s/e =~ "\u3000".encode("euc-jp") #=> nil > とか。 これもエンコーディングを気にしないといけない例ですね。 こういう例も含めて、正規表現の機能にはエンコーディングを気に する必要があるものがあり、気にする正規表現を書いたときは書い た時点で固定してしまうのが適切だと思っています。 気にしないときには //e じゃなくて // と書けばいいんじゃない でしょうか。 > 例えば以下のようになるわけで、あまり強い意味を持たせるのはどうなんですかねぇ。 > > % ruby_1_8 -Ku -e'p /a/s =~ "a\xE3\x81\x82"' > 0 > % ruby_1_9_1 -Ku -e'p /a/s =~ "a\xE3\x81\x82"' > -e:1:in `<main>': incompatible encoding regexp match (Windows-31J regexp with UTF-8 string) (Encoding::CompatibilityError) /a/ ならいいかもしれませんが、/fi/i とか /ss/i は意図してい ない動作になるかもしれないしなぁ。 > 「明確だった」使い方とは、例えば 私が感じているのは、//e は EUC-JP を想定していると理解して問 題なさそうだということです。 >> /\xB9\xA5/ =~ "\xA5\xB9\xA5\xC8" > => 1 >> /#{"\xB9\xA5"}/e =~ "\xA5\xB9\xA5\xC8" > => nil > とか >> /#{"\\\\"}/s =~ "\x95\x5C" > => nil >> /#{"\\\\"}/ =~ "\x95\x5C" > => 1 > でしょうか。 > どちらもバイト構造に起因する誤マッチを防ぐためのものに見えます。 > この種のバイト構造に起因する誤マッチは、Ruby 1.9 ではわざわざ > fixed_encoding を付けなくても回避できるので、これの防止では不要に思えます。 1.9 では文字列が文字境界を知っているというのはそうですね。 1.8 の /\xB9\xA5/e はどうなんですかねぇ。上の例では #{} で避 けてますが。1.9 でそうしろっていわれてもできませんけれど。 > 他に何かマッチ対象のエンコーディングを絞りたいような利用例ってありましたっけ。 oniguruma にはエンコーディングを気にする必要がある機能があり ますから。 -- [田中 哲][たなか あきら][Tanaka Akira]