at kaneshin

Free space for me.

regexp

golang で regexp パッケージを使うときに気をつけること

golang の Regexp は初期化の Compile コストがそこそこありますが、実は正規表現のパターンと対象となる文字列によって、初期化コストが無視できる(パターンと文字列に支配される)くらい遅くなります。よく言われる regexp の初期化コスト問題が無視でき…

vimの\zs, \zeがすごい

http://vim-users.jp/2009/09/hack70/タイトルでほぼ終わって、上のURLで全部終わる。わざわざ置換しないでも return matchstr(str, '^\d\+\ze.*') これだけで済む。もし、置換するなら return substitute(str, '^\(\d\+\).*', '\1', '') ってなる

regular expression

/abc/:abc にマッチ/a.c/:a?c にマッチ/a(bb|b1|b2)c/:abbc、ab1c、ab2c にマッチ/^abc/:abc で始まるとマッチ/abc$/:abc で終わるとマッチ/^$/:空行とマッチ/ab?c/:ac、abc にマッチ/a.*c/:ac、abc、ab1c などにマッチ/a.+c/:abc、ab1c などにマッ…