如何在字符串表达式中为数字添加分隔符

时间:2017-01-01 10:48:33

标签: c# string

我打算创建一些类似计算器的东西。

有一个TextBox用于输入表达式,结果将根据输入的值和运算符计算。例如,用户可以输入:

(12000+15000)/2

我想为输入的数字添加分隔符。因此TextBox中的可观察表达式应为:

(12,000+15,000)/2

1 个答案:

答案 0 :(得分:3)

在C#中使用System.Text.RegularExpressions.Regex.Replace()。 check it working here msdn docs here

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;

namespace Rextester
{
    public class Program
    {
        public static void Main(string[] args)
        {
            string input = "(12000+15000)/2";
            string pattern = "\\d+";
            Regex rgx = new Regex(pattern);
            string result = rgx.Replace(input, callback);

            Console.WriteLine("Original String: {0}", input);
            Console.WriteLine("Replacement String: {0}", result);   
        }

        static string callback(Match m)
        {
            return  string.Format("{0:#,#}", Convert.ToInt32(m.ToString()));
        }
    }
}