ホーム   フォーラム   FAQ
 
メインメニュー
ログイン
ユーザー名:

パスワード:


パスワード紛失

isZenkaku関数/isHankaku関数

  • このフォーラムに新しいトピックを立てることはできません
  • このフォーラムではゲスト投稿が禁止されています
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2010-8-9 15:21
Jiro123  長老   投稿数: 271
旧バージョンのトピックなどで、文字列にいわゆる全角文字や半角文字(DBCSやSBCS)を含むかどうかを判定したいというのがありましたので、それらを判定する関数を作成しました。

すべて全角文字であるか、あるいはすべて半角文字であるかを判定する関数です。

前者が、isZenkaku関数、後者がisHankaku関数です。


判定方法のアイディアですが、isZenkaku関数は、チェック対象となる文字列がすべて全角文字の場合、文字列のシフトJISとしてのバイト数は、その文字列の文字数を2倍した値と等しくなるはずである、という考え方を前提にしています。

isHankaku関数は、文字列がすべて半角文字からなる場合は、文字列のバイト数と文字数は等しくなるはずである、という考え方を前提にしています。

ただし、すべて半角スペースであったり、ブランクの場合は、どちらの関数もFalseを返すようにしています。(これは、一度Trim関数で、半角スペースを取り除いていることに関係します。)

特に、isHankaku関数の場合、すべて半角スペースでもFalseになるので、使用の際は要注意です。


ダウンロード(β)にアップしていますので、ご興味のある方は、ご覧ください。

掲載期限を設けておりますので、ご留意ください。

投票数:0 平均点:0.00

  条件検索へ


Copyright (C) Magic Software Japan K.K. All Rights Reserved.
個人情報保護方針 会員規約