【问题标题】:Cyrillic text validation西里尔文文本验证
【发布时间】:2015-12-22 13:34:25
【问题描述】:

我目前正在尝试分别验证 C# 上的 2 个文本框的名字和姓氏,但问题是文本需要使用西里尔文。这就是我目前所拥有的

string expression = "^[\u0410-\u042F][\u0430-\u044f]{2-20}$";

if (System.Text.RegularExpressions.Regex.IsMatch(textBox1.Text, expression) && 
    System.Text.RegularExpressions.Regex.IsMatch(textBox2.Text, expression))
    MessageBox.Show("Correct",""); 
else 
    MessageBox.Show("There was a mistake in the names.", "Error");

每个名字的第一个字母应该是大写字母,其他字母都是小写字母,因此西里尔字母的 Unicode 表示大写和小写。像这样,它给了我“其他”选项,我不知道错误可能出在哪里。

【问题讨论】:

  • 请注意,您的姓名现在必须至少包含 三个 字符(一个大写,两个小写)。所以荷兰人Ян或亚洲先生Ву就倒霉了。限制姓名输入字段时请务必小心,除非您确切地知道您的受众是谁。

标签: c# regex validation


【解决方案1】:

{2-20} 更改为{2,20}

{n,m}

至少匹配 n 和最多 m 次。 nm 是非负整数,其中 n <= m。逗号和数字之间不能有空格。

source

【讨论】:

  • 总是最简单的事情,不是吗?非常感谢,为我省去了很多麻烦。
猜你喜欢
  • 1970-01-01
  • 2011-09-09
  • 1970-01-01
  • 2016-09-27
  • 1970-01-01
  • 2012-12-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多