カテゴリ | エラー・トラブル |
サマリ | 特定の文字列でAutoLinksのエラー |
バージョン | 全部 |
投稿者 | 太郎 |
状態 | 質問 |
投稿日 | |
AutoLinksで"潰瘍性大腸炎"と"炎症性腸疾患"を作成しても、リンクが形成されません。 .datファイルには正規表現で記載されていますが、ページでリンクとして書き換え処理ができていないようです。 何年も前からこの状態で毎回諦めています。 どなたか解決策をどうかお願い致します。
- 利用中のPukiWikiのバージョンやPHPのバージョンはわかりますか? また、文字コードEUC/UTF-8がどちらか、もわかれば教えてください。 -- umorigu
- 再現しました (PukiWiki 1.5.3/PHP7.4/UTF-8) 。「腸」という文字が含まれるとNGみたいです。「ああ腸」のようなページもリンクされませんでした -- umorigu
- このバグはdev:BugTrack/2518として管理します -- umorigu
- 暫定対策を dev:BugTrack/2518 に書きました。lib/make_link.php :150 の '/x' を '/xu' に変えることでAutoLinkされるようになります -- umorigu
- 数年間悩んでいた問題が解決しました!ありがとうございました! 他にも慢性胃炎と胃炎が併存した場合胃炎が優先されるトラブルもありましたが、こちらの解決策で解決できました。単語中に既存の単語が含まれる場合に起こりやすいと経験的に感じておりましたため、正規表現関連かと勝手に想像していましたが、一文字加えるだけで解決するのですね。 -- 太郎
- コメント失礼致します。BackLink(該当ページへのリンクを持つページのリスト)も同様の症状を示していたので、getobject内も同様に/xを/xuにしたところ問題が解決しました。この対処法で問題ないでしょうか?今の所特に問題は出ていないです。 -- 太郎
- はい。問題ありません。 preg系の正規表現は u をつけるのが正しい使い方です。 (影響が完全に読めないこともあり、今のところ /x を /xu にすることしかしてませんが) -- umorigu
- ありがとうございました! -- 太郎