[英]using regex to validate input formatting in C#
这是一个超级基本的问题(我今天脑死了):
如何使用正则表达式验证输入,以查看:1)输入是否为某种形式2)如果输入是全部大写(只是将输入转换为大写不可行)
我想要确保我的输入格式为XX_XX。 这就是我所拥有的:
public bool IsKosher(string input)
{
Regex r = new Regex(input);
if(r.Matches([A-Z]_[A-Z]))
{
return true;
}
return false;
}
任何想法为什么它不编译?
谢谢!
您缺少双引号,将参数放在错误的位置,并且您不需要if
语句:
public bool IsKosher(string input) {
return Regex.IsMatch(input, "[A-Z]{2}_[A-Z]{2}");
}
行情? 缺少右括号? 匹配没有返回布尔值? 交换字符串参数? 所有这些都会导致您的代码无法编译。
如果它是“XX_XX”,你可能想要这个:
var r = new Regex("[A-Z]{2}_[A-Z]{2}");
return r.IsMatch(input);
你必须把[AZ] _ [AZ]放在引号之间,如下所示:
if(r.Matches("[A-Z]_[A-Z]")
_
两边有两个字符。 Regex
构造函数采用该模式; Matches
方法接受字符串搜索。 Matches
方法返回MatchCollection
。 IsMatch
返回一个布尔值。 像这样:
if (Regex.IsMatch(input, "[A-Z]{2}_[A-Z]{2}")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.