どるこむ仲間の掲示板! 過去ログ倉庫 LOG:2003/06:
●2003年06月インデックス ●過去ログ検索トップ ■どるこむ仲間の掲示板へ
[3079] ー と [ (10 レス)
2003/06/03(Tue) 23:11:46
Tambo さん
Web: (none)
CGIをいじって遊んでるんですけど、変数に含まれる [ 以下を削除しようとすると、
ー とか 充 とかも化けちゃったりするんですね。
人様のソースを切り張りしてる程度の身としてはなかなか難しいです。。。

1. 雷獣王GRIFFON 2003/06/03(Tue) 23:45:12
EUCで処理してないとか.

2. Casper-01@RTS 2003/06/03(Tue) 23:48:27
私もN88-Basic(86)の知識でやってますが、何の処理をしているかサッパリな事が ('ω';)

3. Tambo 2003/06/04(Wed) 00:04:32
Shift-JISのままです(汗)

&jcode'convert(*value, "sjis", "", "z"); を
&jcode'convert(*value, "euc", "", "z"); に
変えたりしたんですけど、それだけじゃダメみたいで(当たり前?

4. 雷獣王GRIFFON@会社 2003/06/04(Wed) 12:22:13
local $str = 'もじ';
jcode'convert(*str, 'euc');
s/\[.*$//;
jcode'convert(*str, 'sjis');

jcode に食わせる変数は my で宣言しちゃうと jcode に食わせることが出来ないので注意.
これ以外だとなんだろー?

5. YFUJI 2003/06/04(Wed) 13:49:43
Perl は sjis で正規表現使って文字いじりやると化けますので注意です。
詳しくは→ http://www.din.or.jp/~ohzaki/perl.htm#JP_EUC_JP

あと、スレとは脱線してますが
> jcode に食わせる変数は my で宣言しちゃうと jcode に食わせることが出来ないので注意.
my でも食わせられますよぅ。 ハードリファレンスですが。
jcode::convert(\$str, 'euc');

6. Tambo 2003/06/04(Wed) 20:19:01
なんかすいません。出来ました。
こんな感じになりました。

$name = &emoji_bundan_check($name);
sub emoji_bundan_check {
local ($str) =$_[0];
jcode'convert(*str, 'euc');
$str =~ s/\[.*$//;
jcode'convert(*str, 'sjis');
$str;
}

http://www.din.or.jp/~ohzaki/perl.htm#JP_EUC_JP
ここを読んで3.の所をやってみたんですけど、追っ付かなかったです(^^;

後は文字カウントの仕方を探しに行ってきます〜
(<img src・・・>とか[abcd]とかを一文字と数えたいです)

今さら何なんですが、YY-BOARD携帯対応改とe-PADをくっけてみようなかと思ってます。

7. 雷獣王GRIFFON 2003/06/04(Wed) 23:20:11
>\$str
こんな使い方しらん・・・.(´д`;)
基本は $ と % と @.(まて
# つかほかの使い方はマジでしりません・・・.
# 参考書買う金無し ○)))... | ̄|_

8. 雷獣王GRIFFON 2003/06/04(Wed) 23:23:39
ちょっとぐぐってみたが・・・やはり蒼いラクダ本が必要か・・・?

9. YFUJI 2003/06/06(Fri) 02:51:48
> こんな感じになりました。
お、できましたかー。てかうむ、綺麗に書きますね(^^;
文字カウントはうーん、一旦別の変数に代入して、正規表現でタグなんかを適当な 1 文字に置き換える…ぐらいかなぁ。とか思ってみたりします。

> 基本は $ と % と @.(まて
むしろ $ だけで頑張って済ます、とか(え

my $hash;
$hash->{hoge} = q|hogehoge|;
$hash->{moge} = q|mogemoge|;

while (my ($a,$b) = each(%$hash)) {
  print qq|$a: $b\n|;
}

なんてメチャメチャな書き方もできます。
# Perl 本欲しいけど高い…てなワケで結局 1 冊も持ってません(ぉ
# Effective Perl 辺りは欲しいなぁ

10. Tambo 2003/06/07(Sat) 00:00:57
恐れ入りますです(^^ゞ

その後・・・
i-modeの絵文字はEUCに変換すると文字化けする事が発覚しました(汗)
ぐぐってたらCGIぽんにたどり着きまして、10進数表記に変換してから事をすればOKでした〜
最後に16進数表記に戻しておきました。

>文字カウントはうーん、・・・
またまたすいません。
使わせていただきます。


▲ページの先頭へ