エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント1件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
全角文字対応substr(S-JIS専用)
Cyclamen BBS で記事題名切り詰めとして使っている処理を 汎用化したものです。 ・引数はsubstrと同じく... Cyclamen BBS で記事題名切り詰めとして使っている処理を 汎用化したものです。 ・引数はsubstrと同じく、開始位置、文字長のいずれかを省略できます。 ・全角文字は2文字として数えます。 sub z_substr { local($s,$p,$l) = @_; $s =~ s/(.)/$1\0/g; $s =~ s/([\x81-\x9f\xe0-\xfc])\0(.)\0/$1$2\0\0/g; $s = $l eq '' ? substr($s,$p*2):substr($s,$p*2,$l*2); $s =~ tr/\0//d; $s; } #example. print &z_substr('全角文字',1,3) ."\n"; print &z_substr('全角文字',-4) ."\n"; print &z_substr('全角文字',,2) ."\n"; 処理概要
2005/05/12 リンク