Rumah  >  Artikel  >  pembangunan bahagian belakang  >  C# 怎么检测string字符串中有哪些数字?

C# 怎么检测string字符串中有哪些数字?

黄舟
黄舟asal
2017-02-20 11:19:241404semak imbas

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字符串中有哪些数字?的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn