【发布时间】:2015-07-18 21:33:32
【问题描述】:
我在 GUI 上有一个文本框,它以“手机号码”作为输入。我想验证它是否有一些字符,这意味着数字是无效的
因此,数字 9876543210 是有效,而数字 98765df013 是 无效
我做了一个所有字符的数组(我不允许)
string[] alphabeticChars = new string[] {
"a", "b", "c", "d", "e", "f", "g",
"h", "i", "j", "k", "l", "m", "n",
"o", "p", "q", "r", "s", "t", "u",
"v", "w", "x", "y", "z"
};
然后我写了一个验证函数
public bool HasCharacters(string text)
{
foreach(string character in this.alphabeticChars)
if(text.Contains(character.ToLower()) || text.Contains(character.ToUpper()))
return true;
return false;
}
如您所见,我需要调用 Contains 两次,一次用于“小写”,另一次用于“大写”。我查了一下,找不到 ContainsIgnoreCase 什么的。
最好的方法是什么?(不要提及正则表达式,因为我不想使用它们)
【问题讨论】:
-
我想我会问:这里的正则表达式有什么问题?
-
@jdphenix 可能是因为每个人都盲目地遵循这个:blog.codinghorror.com/…(没有完全阅读)
-
@jdphenix 没什么特别的,只是想自己做..正则表达式总是可以很方便的..所以,首先我想自己探索
-
您应该在您的实际要求中编辑您的问题。