指定された文字列が、半角英数記号のみかどうかチェックするFunctionです。
サンプル
・文字列が半角英数記号かどうかチェックするFunction
using System.Text.RegularExpressions;
/// <summary>
/// 半角英数記号文字チェック
/// </summary>
/// <param name="val">対象文字列</param>
/// <returns>true:半角英数記号文字のみ false:半角英数記号文字以外を含む</returns>
public static bool isHanEisuKigo(string str)
{
// nullの場合はfalseを返す
if (str == null)
{
return false;
}
// 半角英数記号チェック
return new Regex("^[ -~]*$").IsMatch(str);
}
(使用例)
bool a = isHanEisuKigo("ABC#$%!");
→ True //半角英数記号文字のみなのでTrue
bool b = isHanEisuKigo("ABC#$%!あいう");
→ False //全角文字が含まれるのでFalse
bool c = isHanEisuKigo("ミカン");
→ False //半角カナ文字なのでFalse
bool e = isHanEisuKigo("");
→ True //空文字はTrue
bool f = isHanEisuKigo(null);
→ False //NullはFalse
備考
- 正規表現で半角英数記号文字のみ場合はTrueとしています。
- 正規表現「[ -~]」は「[\u0020-\u007E]」に書き換えてもOKです。