半角全角が混ざった文字列長をチェックするには?

[戻る]
なべ 2001/08/29(水) 17:23:32
単純な問題だと思うのですが、大変困っています。
半角、全角が混じった文字列の長さをチェックしたいのです。
条件は、全角でも半角でも2文字までです。
GetLength() <= 2 とすると、全角の場合、2文字でもはじかれ、
GetLength() <= 4 とすると、半角の場合、4文字でもOKに
なってしまいます。
なにかよい方法はないでしょうか?
よろしくお願いします。

ららら [E-Mail] [HomePage] 2001/08/29(水) 18:03:44
1つの案ですけど、
半角文字を全角に変換してしまうのはどうでしょう?

LCMapStringとかでできます。
使い方はすこし調べればサンプルがみつかると思います。

う〜ん。でももっと簡単にできそうですね。
半角でも全角でも文字数を数えるAPIとかないですかね。

yoshi223 2001/08/29(水) 18:19:28
たぶん
 _mbslen()
 _mbstrlen()
あたりでよいと思います.

Bun 2001/08/29(水) 19:44:24
> 半角、全角が混じった文字列の長さをチェックしたいのです。

確か、良い関数はなかったように思います。

なべ 2001/08/30(木) 09:06:32
[[解決]]
みなさん、ありがとうございました。

僕もMFC、API をいろいろ調べてみましたが、よい関数を
見つけることはできませんでした。
自力で作るしかなさそうです。

お世話になりました。

古いスレッドには追加発言できません。