[#2560] ruby 1.0-970331 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#2571] a mailer written in ruby/Tk — aito@...5nazha.yz.yamagata-u.ac.jp (Akinori ITO)
あ伊藤@山形大学です。
まつもと ゆきひろです.
あ伊藤です。
まつもと ゆきひろです.
> 面倒でなければ自分でおいていただけるとありがたいです.
[#2592] FAQ — MAEDA Shugo <ender@...>
前田です。
まつもと ゆきひろです.
前田です。
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
金光です。FAQサーバ向けにとりあえず、質問だけ提出します(sjisから変換してください)。
[#2596] help — Masao Kanemitsu <masao-k@...>
金光です。調子が悪いので、看てやってください。
まつもと ゆきひろです.
In message <199704040609.PAA22926@castanet.caelum.co.jp>
まつもと ゆきひろです.
tk関係のサンプルが動いてくれなかった件ですが:
まつもと ゆきひろです
In message <199704071537.AAA28214@castanet.caelum.co.jp>
まつもと ゆきひろです.
In message <199704090735.QAA11322@castanet.caelum.co.jp>
まつもと ゆきひろです.
けいじゅ@SHLジャパンです.
In message <199704090856.RAA14093@castanet.caelum.co.jp>
わたなべです.
まつもと ゆきひろです.
わたなべです.
わたなべです.
まつもと ゆきひろです.
わたなべです.
まつもと ゆきひろです.
わたなべです.
まつもと ゆきひろです.
前田です。
大庭@SHLJapanです.
前田です。
大庭@SHLJapanです.
大庭@SHLJapanです.
前田です。
けいじゅ@SHLジャパンです.
まつもと ゆきひろです.
けいじゅ@SHLジャパンです.
[#2619] Re: WWW library (Re: class design) — Shin-ichiro Hara <sinara@...>
原です。
[#2625] [Req] alias for singltone method — keiju@... (Keiju ISHITSUKA)
けいじゅ@SHLジャパンです.
[#2655] Who is 'nobody' — sinara@...
原です。
[#2702] security model — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです.
[#2705] lineno ($.), English.rb — WATANABE Hirofumi <watanabe@...>
わたなべです.
[#2721] [BUG] File.umask — jkuro@... (Kuroda Jun)
黒田です。
まつもと ゆきひろです.
[#2726] Re: class design (Re: url escape) — takagi@... (TAKAGI Hiromitsu)
高木と申します。
[#2767] [BUG?] strip — MAEDA Shugo <ender@...>
前田です。
[#2819] ruby 1.0-970414 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#2829] configure script — TANAKA Shin-ichi <tanaka@...>
田中です。たびたびすみません。
[#2844] ruby 1.0-970422 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#2860] ruby 1.0-970425 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
黒田です。
まつもと ゆきひろです.
黒田です。
[#2876] how to init class? — lo_tek@... (MAEDA Shugo)
前田です。
[ruby-list:2564] Re: ruby 1.0-970331 released
わたなべです.
rbdj0331.lzh, rbgw0331.lzh を put しました.
matz@caelum.co.jp (Yukihiro Matsumoto) writes:
:アナウンスするのを忘れていましたが,970331が出ています.正規
:表現のバグとりを試してみてください.
\W, [\W], [^\w] は同じにならないとまずいですよね. 簡単なスク
リプトでチェックしてみました.
regtable = ['\W', '[\W]', '[^\w]',
'\S', '[\S]', '[^\s]',
'\D', '[\D]', '[^\d]']
regtable.each {|r|
printf "%-5s: ", r
'あい'.sub(r, 'a').each_byte {|c|
printf "%02x ", c
}
print "\n"
}
結果:
\W : 61 a2 a4 a4
[\W] : 61 a4 a4
[^\w]: 61 a2 a4 a4
\S : 61 a2 a4 a4
[\S] : 61 a4 a4
[^\s]: 61 a2 a4 a4
\D : 61 a2 a4 a4
[\D] : 61 a4 a4
[^\d]: 61 a2 a4 a4
というわけで \W, [^\w] も日本語とマッチさせる patch です. た
だし -Kn 時はまだバグってます(眠かったから :-).
それと break の後に意味のないコードがあったんで削除しました.
--
わたなべひろふみ
--- ../ruby-1.0-970331/regex.c Fri Mar 28 14:46:34 1997
+++ ./regex.c Wed Apr 2 02:43:36 1997
@@ -1285,14 +1286,6 @@
b += b[-1] + 2 + EXTRACT_UNSIGNED(&b[b[-1]])*4;
break;
- while ((int) b[-1] > 0 && b[b[-1] - 1] == 0)
- b[-1]--;
- if (b[-1] != (1 << BYTEWIDTH) / BYTEWIDTH)
- memmove(&b[b[-1]], &b[(1 << BYTEWIDTH) / BYTEWIDTH],
- 2 + EXTRACT_UNSIGNED(&b[(1 << BYTEWIDTH) / BYTEWIDTH])*4);
- b += b[-1] + 2 + EXTRACT_UNSIGNED(&b[b[-1]])*4;
- break;
-
case 'w':
laststart = b;
BUFPUSH(wordchar);
@@ -2427,7 +2420,6 @@
case charset_not:
{
int not; /* Nonzero for charset_not. */
- int two; /* 2 if move 2 bytes forward */
int c;
PREFETCH;
@@ -2441,7 +2433,7 @@
else if (translate)
c = (unsigned char)translate[c];
- two = not = is_in_list(c, p);
+ not = is_in_list(c, p);
if (*(p - 1) == (unsigned char)charset_not)
not = !not;
@@ -2451,7 +2443,7 @@
SET_REGS_MATCHED;
d++;
- if (d != dend && two == 2)
+ if (d != dend && c >= 1 << BYTEWIDTH)
d++;
break;
}
@@ -2643,6 +2635,8 @@
PREFETCH;
if (IS_A_LETTER(d))
goto fail;
+ if (ismbchar(*d) && d + 1 != dend)
+ d++;
d++;
SET_REGS_MATCHED;
break;