●Regular Expressionの使用環境
PCRE2
●検索か置換か?
検索
●説明
(..[\0@-g]\0){147}などを高速に検索したい
●対象データ
メガ単位のバイナリファイル(リトルエンディアン)
●希望する結果
説明は一例なので前中後にリテラルパターンが入る事もありますが(16KiBを越える事も)、固定長で
一定範囲だが不明な32bit値(0または0x00400000〜0x00670000付近)を含むブロック位置を列挙したいです
現状PCRE2で検索は出来ていますが、Intel Hyperscanだと
util/determinise.h:determinise:162:succ_id 16383 >= state_limit 16383
ng_mcclellan.cpp:buildMcClellan:590:state limit exceeded
rose_build_add.cpp:addOutfix:1779:could not build as either an NFA or a DFA
ng.cpp:addGraph:507:could not compile component 0 with 592 vertices
と言われて説明の例に限っては正規表現のコンパイルすら不可能です
32bit値は4バイト境界に限りませんが、ブロック先頭は4バイト境界なのでそこから高速化したいのですが
「(?>....)*?\K」を接頭しようとするとPCRE2_ANCHOREDはJITで使えませんし、そもそも遅くなるようです
今のところプログラム側でオフセットが4バイト境界のみを拾い、次の検索開始もアライメントしています
コールアウトもお察し…こういったパターンに適した書き方、又はCライブラリが有れば教えて欲しいです
Regular Expression(正規表現) Part16
■ このスレッドは過去ログ倉庫に格納されています
538デフォルトの名無しさん
2022/10/29(土) 13:09:46.30ID:ec13kmtS■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「排外主義が日本全体で跋扈」村井嘉浩宮城県知事−外国ルーツの女子児童へのいじめで ★2 [蚤の市★]
- 【サッカーW杯】 観客285万人に到達 1試合平均は6万5000人 過去最多を大幅更新ペース [阿弥陀ヶ峰★]
- クールジャパン機構、累積損失500億円超 政府が廃止など検討へ ★2 [ぐれ★]
- 「電話鳴り止まない」AI予約サービス「オートリザーブ」に飲食店困惑 “勝手に”公式マーク表示も 専門家「AIうまく機能していない」 [ぐれ★]
- 【シコ╰⋃╯シコ】ドラッグストア駐車場で陰部露出し自慰行為した公然わいせつ容疑 55歳男を現行犯逮捕 盛岡市 [nita★]
- 【音楽】サカナクション山口一郎、「チケット取れないからファン辞めます」一部Xの声に「悲しい…頑張ろうとしてるから今」 [muffin★]
- 東京都北区の小学校火災、女性教員「電気ストーブで洗濯物を乾かしていた」 [377482965]
- 小学校の音楽の女性教師「えまって!洗濯物を音楽準備室で電気ストーブ使って乾かしてたら大火事になったんだけど!!💢」 [597533159]
- 塩粘の靴ダサくねー?👊😅👊🏡👞
- 【文春】高市、暴かれた本性。木下秘書「文春は中国から毎週一千万円もらっている」自民党内から総スカンなど🤓 [359965264]
- 🇯🇵戦前の特高、日本人が私怨で密告しまくるので困惑していた😭 [399259198]
- キオクシアさん、一時98000まで上がるも現在87000 [498389267]