【PHP】下らねぇ質問はここに書き込みやがれ 15 (43レス)
上下前次1-新
12: (ワッチョイ 617b-8+ss) 11/06(水)19:24 ID:r48zHH+W0(9/16) AAS
なのでこちらは、現状、
・(*SKIP)(*FAIL)の定義自体を見つけられない(が、どこかにあるはず)
ありがちなのは'SKIP'ではなく、最速の s[i]=='S' && s[i+1]=='K' ... とかの可能性で、
これも一応探したが、ない…
高速化の為に探索部分と一体化してて、grep等では探せないのかも…
・(*SKIP)(*FAIL)を探しに行っている関数 onig_st_lookup の定義が見つからない(が、これもどこかに定義されてるはず)
マクロで書き換えててgrepではヒットしない場合もあるが、一般的にはこれはあまりないはず…
という感じ
上記 fprintf については、
・$pattern = "....(*SKIP)(*FAIL)|[^あ]";を与えた場合、
'SKIP'と'FAIL'が検索される(と予想)
そして onig_set_callout_of_name 内
callout_name_entry 内
callout_name_find 内
onig_st_lookup_callout_name_table 内
onig_st_lookup で検索されるが、検索に失敗する
(そして onig_st_lookup の定義が見あたらない…)
・何故検索に失敗するのかは、上記fprintfで確定するはずだが、
もしかするとphpがutf-8でonigurumaがutf-16なのか?
・(*MyFunc)とかやりたいのなら諦めた方がいい
php側のインタフェースがまるでないので、先は長い
そこを俺が書いてやるぜ!という勇者ならphp側も歓迎はするだろうが
(C書けてもonigurumaの仕様を熟知してないと書けない部分だし)
というわけで自身の探索経過と比較してくれれば、辿り方等も分かってくると思う
ちな、ささっと分かるなら、再記すると
・(*SKIP)(*FAIL)の定義部分
・onig_st_lookup の定義部分
を見つけてくれれば確認する
上下前次1-新書関写板覧索設栞歴
あと 31 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.002s