读书人

查寻字符串里第一个大于等于某数的值

发布时间: 2013-04-07 12:50:11 作者: rapoo

查找字符串里第一个大于等于某数的值
我有个字符串如下:
100;108;209;301;309;330;

我想把第一个大于或者等于300的数查找出来,然后显示出来,这个怎么实现?

多谢!
[解决办法]

引用:
引用:一种,按分好split成一个数组,自己遍历比较,或者用linq取出
第二,用正则取出
用正则怎么取呢?

string input = "100;108;209;301;309;330;";
MatchCollection mc = Regex.Matches(input, @"3\d{2,}");
for (int i = 0; i < mc.Count; i++)
{
string b = mc[i].Value;
}
[解决办法]
string result = Regex.Matches("100;108;209;301;309;330;", @"([1-9]\d{3,}
[解决办法]
[3-9]\d{2,})(?=;
[解决办法]
$)").OfType<Match>().First().Value;
[解决办法]
引用:
引用:string result = Regex.Matches("100;108;209;301;309;330;", @"([1-9]\d{3,}
[解决办法]
[3-9]\d{2,})(?=;
[解决办法]
$)").OfType<Match>().First().Value;
晕,看完大家的回复,才发现我说错了,是找出大于等于300的,最接近的那个数,不是第一……

先排序就是了

string input = "100;108;209;301;309;330;";
string result= Regex.Matches(input, @"[1-9]\d{3,}
[解决办法]
[3-9]\d{2,}").OfType<Match>().Select(x=>x.Value).OrderBy(x=>x).First();

[解决办法]
引用:
引用:引用:引用:引用:string result = Regex.Matches("100;108;209;301;309;330;", @"([1-9]\d{3,}
[解决办法]
[3-9]\d{2,})(?=;
[解决办法]
$)").OfType……

string input = "100;108;209;301;309;330;";
string result= Regex.Matches(input, @"[1-9]\d{3,}
[解决办法]
[3-9]\d{2,}").OfType<Match>().Select(x=>x.Value).OrderBy(x=>x).FirstOrDefault();
[解决办法]
string pattern=@"[1-9]\d{3,}
[解决办法]
[4-9]\d{2}
[解决办法]
3[2-9]\d";

读书人网 >VB Dotnet

热点推荐