c# - 用于检测 ISO 语言代码的正则表达式

标签 c# regex winforms

我正在尝试检测组合框是否包含 ISO 语言代码(即 en-GB、el-GR、ru-RU 等),它由 2 个字母字符、一个破折号和另外 2 个字母字符组成(大写,或者可能无关紧要?)。

我想知道,有没有一种方法可以使用正则表达式实现这一点?

我假设表达式看起来像这样(但我在这个主题上没有太多经验):

string pattern = @"^\a{2,2}-\a{2,2}";

最佳答案

像这样的东西应该可以工作:^[a-z]{2}-[A-Z]{2}$

^ anchor 指示正则表达式引擎从字符串的开头开始匹配,[a-z] 表示a 之间的任何小写字母> 和 z{2} 表示恰好重复 2 次。同样的解释适用于其余部分。最后,$ 指示正则表达式引擎在字符串末尾停止匹配。

关于c# - 用于检测 ISO 语言代码的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15403122/

相关文章:

c# - System.Data.dll ("Incorrect syntax near ' )'."中的“System.Data.SqlClient.SqlException”)?

c# - 如何找到 wpf 应用程序的根路径并在根目录上创建用于保存图像的文件夹?

c# - 在 Unity 中创建 2D 圆形网格

Python:匹配多个正则表达式模式之一并在匹配时提取 IP 地址

c# - 在菜单项或菜单条中显示 &

c# - 从 Javascript 方法调用 c# 函数

数值的正则表达式模式

regex - Perl 替换文本 block

c# - 如何使用 C# 清除 Windows 应用程序中的 datetimepicker 值?

c# - DataGridView:查看空数据网格