アカウント名:
パスワード:
Rubyで正規表現使ったら1日かかっても終わらなかったのねそれがSEDで数秒で終わった時にこれはすげえやと
あ、AWKの話じゃなかった
awkの正規表現エンジンはReDOSの余地がない、理論通りO(N)で動くやつだからな
あ、sedの話だったのか。でもawkでも同じ。現在の高機能だけど(最悪計算量的な意味で)低速な正規表現エンジンはPerlが最初に持ち込んだ
| Rubyで正規表現使ったら1日かかっても終わらなかった
たった200MBで一日とはいったいどんな正規表現か気になる
文字コードで苦労してきた日本人としてはRuby一択
自分は、一行で200MBもある正規表現なんて見たことも聞いたこともないですが、対象ファイルが膨大な数とか何テラもあるとかなら、一日とかそんなこともあるのではないでしょうか。
200MBどころか、数十文字でも1日かかって帰ってこない正規表現なんて余裕で作れる(sedやawkの実装のように線形時間実行保証のある実装でなければ)
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
にわかな奴ほど語りたがる -- あるハッカー
200MB改行なしのテキストを処理したとき (スコア:0)
Rubyで正規表現使ったら1日かかっても終わらなかったのね
それがSEDで数秒で終わった時にこれはすげえやと
あ、AWKの話じゃなかった
Re: (スコア:0)
awkの正規表現エンジンはReDOSの余地がない、理論通りO(N)で動くやつだからな
Re: (スコア:0)
あ、sedの話だったのか。でもawkでも同じ。現在の高機能だけど(最悪計算量的な意味で)低速な正規表現エンジンはPerlが最初に持ち込んだ
Re: (スコア:0)
Re: (スコア:0)
| Rubyで正規表現使ったら1日かかっても終わらなかった
たった200MBで一日とはいったいどんな正規表現か気になる
文字コードで苦労してきた日本人としてはRuby一択
Re: (スコア:0)
自分は、一行で200MBもある正規表現なんて見たことも聞いたこともないですが、対象ファイルが膨大な数とか何テラもあるとかなら、一日とかそんなこともあるのではないでしょうか。
Re: (スコア:0)
200MBどころか、数十文字でも1日かかって帰ってこない正規表現なんて余裕で作れる(sedやawkの実装のように線形時間実行保証のある実装でなければ)