Я хотел бы знать, что самый простой и самый короткий запрос LINQ - вернуть true, если строка содержит в себе любой символ числа.
Проверьте, имеет ли строка в нем хотя бы одно число, используя LINQ
Ответ 1
"abc3def".Any(c => char.IsDigit(c));
Обновить: как отметил @Cipher, его можно сделать даже короче:
"abc3def".Any(char.IsDigit);
Ответ 2
Попробуйте это
public static bool HasNumber(this string input) {
return input.Where(x => Char.IsDigit(x)).Any();
}
Использование
string x = GetTheString();
if ( x.HasNumber() ) {
...
}
Ответ 3
или возможно использование Regex:
string input = "123 find if this has a number";
bool containsNum = Regex.IsMatch(input, @"\d");
if (containsNum)
{
//Do Something
}
Ответ 4
Как насчет этого:
bool test = System.Text.RegularExpressions.Regex.IsMatch(test, @"\d");
Ответ 5
string number = fn_txt.Text; //textbox
Regex regex2 = new Regex(@"\d"); //check number
Match match2 = regex2.Match(number);
if (match2.Success) // if found number
{ **// do what you want here**
fn_warm.Visible = true; // visible warm lable
fn_warm.Text = "write your text here "; /
}