C# 如何把string中的两个数字提取出来

2024-12-03 13:21:14
推荐回答(2个)
回答1:

用正则表达式吧,不管你哪一边有空格,或者中间是什么分隔符,都可以把两个数字提取出来.

C#正则表达式:\\d+(\\.\\d+)?

完整的C#程序如下:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Text.RegularExpressions;

namespace ConsoleApplication3

{

    class Program

    {

        static void Main(string[] args)

        {

            string s="1.2 - 5.5";

            Regex r = new Regex("
\\d+(\\.\\d
+)?");

            MatchCollection matches = r.Matches(s);

            for (int i = 0; i < matches.Count; i++)

            {

                if (matches[i].Success)

                {

                    Console.WriteLine(matches[i].Groups[0].Value);

                }

            }

            Console.ReadKey();

        }

    }

}

运行结果:

1.2

5.5

回答2:

通过string的Substring()和IndexOf()方法,先截取-之前的,再截取-之后的,就分开了