掲示板で引用文の色を変えたい

[上に] [前に] [次に]
しみぬき [E-Mail] [HomePage] 2000/03/30(木) 13:37:06
1 行 1 レコードの掲示板なんですが、過去ログにのってたやつ
全部試したけど全部だめだした。
なぜか、
「> abcdefg(←ここまでしか色変わらない…)あいうえおかきくけこ」
とエイゴの部分しか色変わらないんです。
「.*」って日本語マッチしないのかな ? みたいな。

よろしくどうもー。

piro-kim 2000/03/30(木) 21:16:27
~= s/^<br>((>|>).*)<br>/<a href="$1">$1</a>/g;

じゃできませんか ?

なにげに 2000/03/30(木) 21:26:48
すごいページのタイトルですね。

気分を害したらごめんなさい。

らんま 2000/03/30(木) 21:48:50
このトラブルの原因の日本語のパターンマッチについてですが僕が推測するにおそらくPERLでは1バイト文字しか解釈できないので日本語をパターンマッチにかける日本語は2バイトで一文字となるのでその問題でマッチしないのかと思います。その解決方法としてjperl(日本語化バッチ)があります。

らんま 2000/03/30(木) 21:49:17
このトラブルの原因の日本語のパターンマッチについてですが僕が推測するにおそらくPERLでは1バイト文字しか解釈できないので日本語をパターンマッチにかける日本語は2バイトで一文字となるのでその問題でマッチしないのかと思います。その解決方法としてjperl(日本語化バッチ)があります。

しみぬき 2000/03/30(木) 23:22:13
マジですか。

ぽげぇ

Fuji.♪ [E-Mail] [HomePage] 2000/03/31(金) 13:32:57
$str =~ s/((>|>).*?)\\n/<font color="red">$1<\/font><br>/g;

この辺を参考にして、適宜書き換えてください。
.*では、普通「あ」の1バイト目、「あ」の2バイト目などという部分を含んでいるはずです。

試してみた時の正規表現を書いたほうが、何がどう悪いのか指摘してもらえると思います。
あと、メッセージがどのように実際には保存されているか。
上の例では、改行を\n(LFではなく、'\'と'n')で保存している扱いとしています。

しみぬき 2000/03/31(金) 15:05:51
>Fuji.♪さん
助かりました。
あとでちょっとやってみます。
ありがとう。

しみぬき 2000/03/31(金) 15:07:38
>らんまさん
ありがとう。参考になります。

らんま 2000/04/01(土) 21:43:23
僕も正規表現についてはまだまだわからないことが多いけどjperlはもし君の加入しているプロバイダがCGIが利用できるなら必ずjperlも利用できるはずだから最初のパス名指定の行でこのようにすれば使える。
#!/usr/local/bin/jperl (例)僕のプロバイダの場合
とりあえずperlをjperlにするだけのこと。

2000/04/02(日) 00:28:30
>プロバイダがCGIが利用できるなら必ずjperlも利用できるはず
マジですか?
jperl入れてるisp(Internet Service Provider)なんて極少数かと思ってたんですが・・・.
ちなみに僕の契約しているispでは使えません.
jcode.plと相性が悪くなるので,管理者が嫌って入れないという話を聞いたことがあるんですが,実際(必ずといわないまでも)ispで普及してる物ですか?

2000/04/02(日) 00:36:01
>しみぬきさん
ちなみに,どのようなコードを記述してらっしゃいますか?
問題無ければソースを公開すれば多少具体的な解決法も出ると思うのですけど.

>abcdefgあいうえおかきくけこ
で途中で色が変わらなくなる動作を再現できなかったので・・・

しみぬき 2000/04/02(日) 10:26:04
みなさんありがとう。
今日中にやっときます。>猫さん

らんま 2000/04/02(日) 18:26:18
>プロバイダがCGIが利用できるなら必ずjperlも利用できるはず
マジですか?
確かに相性は悪いです。すこし断定して言い切ってしまいましたが、要するにjperlが入っていないプロバイダなら自分でパッチをコンパイルして使えるようにするしかないでしょうということなのです。面倒ですが。以上デース。

[上に] [前に] [次に]