文字列のチェック への返答

投稿で使用できる特殊コードの説明。(別タブで開きます。)
本名は入力しないようにしましょう。
投稿した後で削除するときに使うパスワードです。返答があった後は削除できません。
返答する人が目安にします。相手が小学生か社会人かで返答の仕方も変わります。
最初の投稿が質問の場合、質問者が解決時にチェックしてください。(以降も追加書き込み・返信は可能です。)
※「過去ログ」について書くときはその過去ログのURLも書いてください。

以下の返答は逆順(新しい順)に並んでいます。

投稿者 るきお  (社会人) 投稿日時 2009/7/2 21:47:43
>ジョンさん、
この掲示板ではマルチポスト自体はOKですが、
マルチポストをする際は、他に投稿した場所のURLを必ず書いてください。
また、他の場所で問題が解決した場合具体的な解決方法をこの掲示板にも書き込んでください。

ヴァンさん、情報提供ありがとうございます。
投稿者 ヴァン  (社会人) 投稿日時 2009/7/2 18:56:44
返事は無しなんだろうなぁ。

http://my.chiebukuro.yahoo.co.jp/my/myspace_quedetail.php?writer=itotsukae233
投稿者 るきお  (社会人) 投稿日時 2009/7/2 08:17:24
こんにちは。

Ifなどの条件判断で確認することになります。
ただし、文字数が多いと大変なのでLikeを使うと多少楽になります。
     
Dim st As String
    
st = "テスト"
    
Dim Letter As String
Dim i As Integer
    
For i = 1 To Len(st)
    Letter = Mid(st, i, 1)
    If Letter Like "[!0-9a-zA-Z]" Then
        MsgBox "半角英数ではない文字があります。"
        Exit For
    End If
Next i


この例は変数stに1文字でも半角英数でない文字が含まれている場合メッセージを表示します。

>できれば、半角数字かどうかのチェック・文字数チェックのやり方も教えてください。
半角数字かのチェック
Likeの条件を [0-9] や [!0-9]などにします。
文字数のチェック
Lenを使用します。

     
If Len(st) > 8 Then
    MsgBox "8文字までです。"
End If


入力のチェックに使用されることと思いますが、入力のチェックにはさまざまな方法があり、ここで紹介したのは一例です。
以下のページで説明しているのでよろしければ参照してください。
http://homepage1.nifty.com/rucio/main/technique/InputChk2.htm
http://homepage1.nifty.com/rucio/main/technique/InputChk.htm
投稿者 ジョン  (社会人) 投稿日時 2009/7/2 07:27:37
vb6.0でString型で格納されている文字列が半角英数字かどうか確認する方法ってありますか?
できれば、半角数字かどうかのチェック・文字数チェックのやり方も教えてください。