【C#】文字列がアルファベットのみか、数値のみか判定する
文字列解析で、文字列が数値とアルファベットのみか判定することがあったので、判定メソッドを作りました。
数字はint.TryParseで使えば簡単にbool値を取得して判定できますが、
C#7以前だとoutパラメータで変数の宣言ができず記述が冗長になるので簡単ですがこんな感じにしました。
コメントでごchar.IsDigitメソッドがあること、またLINQもAllで判定した方が簡潔で良いとご指摘頂きました、ありがとうございます!
1.文字列が数値か判定
static void Main(string[] args) {
// true
var str1 = "12312";
var f1 = src1.All(char.IsDigit);
// false
var str2 = "12a12";
var f2 = src2.All(char.IsDigit);
}
2.文字列がアルファベットか判定
static void Main(string[] args) {
// true
var str1 = "abcDeZ";
var f1 = src1.All(IsAlphabet);
// false
var str2 = "abcD3Z";
var f2 = src2.All(IsAlphabet);
}
public static bool IsAlphabet(char c) {
return (c >= 'A' && c <= 'z') ? true : false;
}
まとめ
static void Main(string[] args) {
// true
var str1 = "12312";
var f1 = src1.All(char.IsDigit);
// false
var str2 = "12a12";
var f2 = src2.All(char.IsDigit);
}
static void Main(string[] args) {
// true
var str1 = "abcDeZ";
var f1 = src1.All(IsAlphabet);
// false
var str2 = "abcD3Z";
var f2 = src2.All(IsAlphabet);
}
public static bool IsAlphabet(char c) {
return (c >= 'A' && c <= 'z') ? true : false;
}
まとめ
バグなどあればご指摘いただけると幸いです。
Author And Source
この問題について(【C#】文字列がアルファベットのみか、数値のみか判定する), 我々は、より多くの情報をここで見つけました https://qiita.com/hotelmoskva_/items/77bdc61a592a69914287著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .