vim Part2

このエントリーをはてなブックマークに追加
910名無しさん@お腹いっぱい。
>>909
>echo matchstr('a123', '\d*')
>echo matchstr('a123', '\d\{0,}')
matchstr('a123', '\d*') は、先頭にマッチしたから、'' なんですよ。
match() も matchend() も、マッチしない場合は、-1 を返します。

:echo match('a123', '\d*')
0
:echo matchend('a123', '\d*')
0

'a123', 'h*' も、 'a123', '!*' も、'a123', '\A*' も、
「先頭にマッチしない文字クラスが 0 個以上」の正規表現なので、
必ず先頭にマッチします。恒真式です。