C# 从字符串中获取特定的数字,以查看c中的起始整数#

C# 从字符串中获取特定的数字,以查看c中的起始整数#,c#,regex,C#,Regex,我正试图从一根绳子上得到这场比赛的尊重。我必须从给定的字符串中得到两类数字。数字从5开始,后跟6位数字。例如(5******),从1开始,后跟5位(1******) 我使用以下正则表达式: (5)[\d]{6} (1)[\d]{5} 代码: 这里的问题是,我是否通过了5106542它将返回两个协调结果 我也尝试了这个(^5)[\d]{6}。尽管如此,它还是不起作用 我只需要5****。任何帮助都是真正有价值的。 问题是,你的表达式没有对比赛的位置提出任何要求,所以他们在中间找到了匹配。 如果

我正试图从一根绳子上得到这场比赛的尊重。我必须从给定的字符串中得到两类数字。数字从5开始,后跟6位数字。例如(
5******
),从1开始,后跟5位(
1******

我使用以下正则表达式:

(5)[\d]{6} 
(1)[\d]{5}
代码:

这里的问题是,我是否通过了
5106542
它将返回两个协调结果

我也尝试了这个
(^5)[\d]{6}
。尽管如此,它还是不起作用


我只需要
5***
*。任何帮助都是真正有价值的。

问题是,你的表达式没有对比赛的位置提出任何要求,所以他们在中间找到了匹配。

如果需要查找符合条件的独立数字,请在表达式的两侧添加
\b
,以确保两侧没有字母/数字:

var sampleId1 = Regex.Match(input, @"\b(1)[\d]{5}\b");
//                                   ^^          ^^

现在表达式只考虑孤立的数字序列,<代码> 5106542 < /代码>将不匹配,因为匹配的序列在中间。

< P>尝试: ^(5{6}1{5})

你应该得到完整的数字,然后只检查第一个数字。
但是,您可能希望在正则表达式的末尾添加“$”或a\b(正如dasblinkenlight指出的那样)。

有什么问题吗
(^5)[\d]{6}=^5\d{6}
?不确定,因为问题不明确:您是否在寻找与
regex.Matches
?请参阅。是否有需要验证完全是数字的字符串的原因?有时只是
10000有什么反馈吗?请准确回答你的问题。谢谢你,伙计。!它起作用了。很抱歉,迟来的确认。
var sampleId1 = Regex.Match(input, @"\b(1)[\d]{5}\b");
//                                   ^^          ^^