2012-12-04 21 views
3

是否有Windows窗体文本框或c#字符串本机成员方法,检查其内容是否有任何非字母数字字符?Windows窗体文本框或c#字符串本地方法检查非字母数字字符

还是我必须手动执行?

编辑: 我使用@ Habib的答案,并添加了这样的空白检查,以及令我惊讶,它的工作!笑

bool result = strVariable.Any(r=> (!char.IsLetterOrDigit(r) && !char.IsWhiteSpace(r))); 

顺便说一下,我从来没有使用“拉姆达”表示,这就是为什么我很惊讶的代码,当我加在@ Habib的初步回答空白状态上述工作。

回答

4

您可以使用char.IsLetterOrDigit

表示一个Unicode字符是否被归类为字母或 十进制数字。

bool result = strVariable.Any(r=> !char.IsLetterOrDigit(r)); 
+0

谢谢哈比!我喜欢你的答案是多么简单。 – Mikk

+0

@Mikk,欢迎您:) – Habib

0

您可以创建一个具有文本框为基干的控制,但目前没有任何特性,这为您完成此,你必须做这个TextBox的KeyUp事件,并使用正则表达式或相似