Welcome

首页 / 软件开发 / C# / C#中如何检测string字符串中的数字

C#中如何检测string字符串中的数字2014-10-07
//测试函数private void Form1_Load(object sender, EventArgs e){foreach (var number in ExtractNumbersFromString("abc2345 345fdf678 jdhfg945")){MessageBox.Show(number.ToString());}}private IEnumerable<int> ExtractNumbersFromString(string s){//Regex.Matches 方法:在输入字符串中搜索正则表达式的所有匹配项并返回所有匹配。//一次或多次匹配前面的字符或子表达式。等效于 {1,}。如果将+去掉,就是//return Regex.Matches(s, @"d+").Cast<Match>().Select(m => Convert.ToInt32(m.Value));return Regex.Matches(s, @"d").Cast<Match>().Select(m => Convert.ToInt32(m.Value));}
"abc2345 345fdf678 jdhfg945"

以上例测试的时候,有加号,会这么输出:

2345

345

678

945

没有+的时候,会这么输出:

2

3

4

5

3

.......

本文URL:http://www.bianceng.cn/Programming/csharp/201410/45578.htm