分节的方法:
从小数点起,向左或向右每3位分成一组,组间留一空隙。空隙大小为四分之一汉字或二分之一阿拉伯数字。文档中数字太多,能否用一正则表达式进行分节。

解决方案 »

  1.   

    string s = "1234567890.12345678";
    string r = Regex.Replace(s, @"\d+?(?=(?:\d{3})+\.)", "$0 ");
    r = Regex.Replace(r, @"(?<=\.(?:\d{3})+)\d+?", " $0").Trim();
    Response.Write(r);
      

  2.   

    楼主不是说“从小数点开始”。这样试试:
    string s = "88776655和1234567890.12345678和987654321";
    string r = Regex.Replace(s, @"\d+?(?=(?:\d{3})+\.)", "$0 ");
    r = Regex.Replace(r, @"(?<=\.(?:\d{3})+)\d+?", " $0");
    r = Regex.Replace(r+" ", @"(?<=\D*)\d+?(?=(?:\d{3})+\D+)", "$0 ").Trim();
    Response.Write(r);
    输出:88 776 655和1 234 567 890.123 456 78和987 654 321