c#-检查字符串是否包含字符和数字
如何检查字符串是否包含以下字符“-a”后跟数字 Ex:ThisisString-A21=是,包含“-A”和数字c#-检查字符串是否包含字符和数字,c#,asp.net,.net,regex,C#,Asp.net,.net,Regex,如何检查字符串是否包含以下字符“-a”后跟数字 Ex:ThisisString-A21=是,包含“-A”和数字 Ex:thisIsaNotherString-AB21=否,不包含“-A”后跟数字可以使用正则表达式完成: if (Regex.IsMatch(s, @"-A\d")) { ... } \d匹配任何数字 在线查看它的工作情况: 如果确实要提取-A[num]位,则可以执行以下操作: var m = Regex.Match("thisIsaString-A21", "-A\\d+"));
Ex:thisIsaNotherString-AB21=否,不包含“-A”后跟数字可以使用正则表达式完成:
if (Regex.IsMatch(s, @"-A\d")) { ... }
\d
匹配任何数字
在线查看它的工作情况:
如果确实要提取-A[num]位,则可以执行以下操作:
var m = Regex.Match("thisIsaString-A21", "-A\\d+"));
if(m.Success)
{
Console.WriteLine(m.Groups[0].Value);
//prints '-A21'
}
您还可以做其他事情,例如,如果您需要单独提取A[num]位,或者只提取数字:
var m = Regex.Match("thisIsaString-A21", "(?<=-A)\\d+");
//now m.Groups[0].Value contains just '21'
var m=Regex.Match(“ThisisString-A21”(?你试过什么?既然你已经知道它叫regex,找到答案应该不到一分钟。那么这是string-A21B,其他的什么可以吗?…除了\d
将只匹配一个数字,而给出的示例是-A21
,所以OP可能需要两个数字digits@AndrasZoltan:那是个好主意如果您想提取数字(如您的答案中所示),相关关注点是不相关的,但如果您只想测试是否存在匹配项,则相关关注点是不相关的。如果s=“C:\\”,和Regex.IsMatch(s,@“-a\d”)为false+1,表示也显示了如何提取数字,尽管我猜OP在这种情况下只需要“是”或“否”。-)
var m = Regex.Match("thisIsaString-A21", "(?<=-A)\\d+");
//now m.Groups[0].Value contains just '21'
var m = Regex.Match("thisIsaString-A21", "(?<=-)A\\d+");
//now m.Groups[0].Value contains 'A21'