scrapboxのリンクサジェスト、とても速くないか?
裏でいろんな最適化を施しているのかなあ
単に自分のprogramming skillがガバなだけでは
scrpboxはScrapboxにマッチするけどscrboxだとダメ
二文字誤りはマッチしない、ということでもなさそうですね……
現状だと、jabascriptはJavaScriptにマッチするけど、
javaはJavaScriptにマッチしない
new Asearch(' ' + word + ' ')
という感じで前後にスペースを入れると良さそう
スペースの部分は何にでもマッチする
new Asearch(' java ').match('javascript') // => true
new Asearch(' jscr ').match('前後にJavaScript文字を入れてみたり', 1) // => true
今すぐ試す!
15:40:44 できた
歯抜けマッチングを除いた分、多少速くなったかもしれない
テスト: scrapbox
scrp
一文字脱字
部分一致
scrpbox
一文字脱字
完全一致
scrbox
二文字脱字
完全一致
scrbx
二文字脱字+間飛ばして一文字脱字
scrx
三文字脱字
scr bx
二文字脱字+間飛ばして一文字脱字
スペース区切り
bx scr
順序が逆
性能には関係ないかもしれませんが、
flatMap相当の処理をmap.reduceで書いてるのも気になる
早速書き換えました
ご存知かもしれないですが、
/shokai眺めてたら面白いページを見付けたので
そうそう、これを参考にしてWebWorker処理を実装しました