1

如何检查 a 是否TextBox包含数字、字母以及特殊字母,如“õ、ä、ö、ü”?

我使用代码来检查数字和字母:

Regex.IsMatch(Value, "^[a-z0-9]+$", RegexOptions.IgnoreCase)
4

4 回答 4

8

如何检查文本框是否仅包含数字和字母,

bool isValid = textBox.Text.All(char.IsLetterOrDigit);

考虑以下示例:

string str = "Something123õäö";
bool isValid = str.All(char.IsLetterOrDigit);

您将获得true上述情况。

于 2013-07-23T18:51:12.703 回答
1

只需遍历每个字符并与或与其他字符进行比较,并与char.GetUnicodeCategory字母和数字进行比较:

var allowed = new[] { 'ö', 'ä' };
var isOK = textBox1.Text.All(c =>
    char.GetUnicodeCategory(c) == UnicodeCategory.LowercaseLetter ||
    char.GetUnicodeCategory(c) == UnicodeCategory.UppercaseLetter ||
    char.GetUnicodeCategory(c) == UnicodeCategory.DecimalDigitNumber ||
    allowed.Contains(c));

UnicodeCategory.LowercaseLetter是标准'a'..'z'的小写UnicodeCategory.UppercaseLetter字母(UnicodeCategory.DecimalDigitNumberallowed

于 2013-07-23T18:53:01.243 回答
1

如何从字符串中去除非 ASCII 字符?(在 C# 中)包含任何指针?

您可以使用正则表达式中的语法将 unicode 包含在\uXXXX您特别想要剥离测试的任何其他字母中。

Regex.IsMatch(Value, "^[a-z0-9\u00c0-\u00f6]+$", RegexOptions.IgnoreCase)
于 2013-07-23T19:09:18.577 回答
1

如果您想验证所有“单词章程”,\w如果您想查看整个字符串是否只是单词字符或数字,请使用正则表达式^(\w|\d)+$

于 2013-07-23T19:30:44.427 回答