PHP掲示板その17

くもり今日は仕事休み。
8時半くらいに起きてきた。

昼に坂出まででかけた。

頭を悩ますPHP掲示板
本文中のURLにリンクを張るのはいいのだけど、そのおかげで検索のときにすっごい頭を悩ませている。
<a href=”http://urlurl.urlurl.com/” target=”_blank”>http://urlurl.urlurl.com/</a>
この部分が検索されてしまう。 そして色を変える為に<font>タグも組み込まれて表示がめちゃめちゃになる。

(<a hrefx3dx22.*x22
targetx3dx22_blankx22>)(.*)(</a>)

こんな正規表現を書いたんだけど、これがログ内で見つかったら、前半部分を<z>に後半を</z>に置き換えるという風にやってみた。
すると <z>http://urlurl.urlurl.com/</z> となった。
先日やった<br>を対象からはずすのと似たような正規表現で、<z>と</z>をはずすようにした。

これで表示は一応できたのだけど条件がある……

まず本文中に書かれているURLが1つの場合。 これだときちんと表示できると思うのだけど、2つ以上になると動作がおかしくなる。 一番最初に表示される<a から 一番最後の閉じるところまでが一気にまとめられちゃってるのかなぁ?
うーん、むずかしい。

それと検索されたものを表示するところで、
<a href=“http://urlurl.urlurl.com/” target=_blank“>http://urlurl.urlurl.com/</a>
この青の部分も検索されてしまう。 色こそは変わらないので表示はおかしくならないのだけど、本文中に含まれてないのに表示されてしまうのも……
<z></z>の復元を表示の場所でやればいいのかな~
あと/で検索すると表示が狂う。
で検索するとエラーがいっぱいおきる。
“で検索すると強制的にに変換される。
>を表す$gt;のgやtで検索すると表示が狂う。
↑の引用符の<font>タグの部分はまだいじってない。

というか、背景に色をつけるのをやめたい気分(笑)

サンプル
ソース
管理モードのパスはaaaa