c# 怎么检测string字符串中有哪些数字?
//测试函数
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
.......
以上就是c# 怎么检测string字符串中有哪些数字?的内容。
