なひです.

> From: WATANABE Hirofumi [mailto:watanabe / ase.ptg.sony.co.jp]
> Sent: Monday, August 09, 1999 2:52 PM

> :gdbのような,
> :
> :  wでもwhでもwhiでもwhicでもwhichでも
> :
> :マッチするような正規表現て,どうかけばいいんですかね.
> 
> gdb ってそういう仕様なんだ. 知らなかった.

またロクに確かめもせずいい加減なこと書きました.
そもそも「which」なんてコマンドありませんね.^^;
gdb 4.17ですが,

(gdb) w
Ambiguous command "w": watch, whatis, where, while, while-stepping, ws.
(gdb) wh
Ambiguous command "wh": whatis, where, while, while-stepping.
(gdb) whe
No stack.
(gdb) wher
No stack.
(gdb) where
No stack.
(gdb) 

こんな感じです.

> :   w(?:h(?:i(?:c(?:h))))
> :
> :しかないのかな...
> 
> これは "which" にしかマッチしません.
> ) の後に ? をつけないとまずいでしょう. ついでに \b も.
>    w(?:h(?:i(?:c(?:h)?)?)?)?\b
> うーむ. めんどう.

またやった...確かに「?」が要りますね.それで面倒だと思ったのでした.
\bは考えから抜け落ちてました.あぶないなー.^^;

> 発想を逆にして入力した文字列のサイズ分だけ比較するのはどうかな?
> 
> input_arg0 = input.split[0]
> case
> when "which"[0, input_arg0.size]
>   ...
> when ...
>   ...
> end

なるほど,まずはコマンド部だけ切り離して("up 5"→"up")
検査するわけですね.