如何在 C# 中转换43961529(10%)
为?43,961,529.00
我有一个值43961529(10%)
,DataTable
我DataColumn
想将其转换为43,961,529.00 (10%)
.
括号((10%)
)之间是市场份额。
我正在使用 Visual Studio 2008,C#。
如何在 C# 中转换43961529(10%)
为?43,961,529.00
我有一个值43961529(10%)
,DataTable
我DataColumn
想将其转换为43,961,529.00 (10%)
.
括号((10%)
)之间是市场份额。
我正在使用 Visual Studio 2008,C#。
使用正则表达式,您可以从字符串中获取数字部分。然后您可以将其解析为整数,以您喜欢的任何方式对其进行格式化,然后将字符串重新组合在一起。
public static string Format(string input)
{
Regex regex = new Regex(@"^(\d+)(.*)$");
var match = regex.Match(input);
if (match.Success)
{
input = Int32.Parse(match.Groups[1].Value).ToString("N2");
input += " " + match.Groups[2].Value;
}
return input;
}
你像这样使用它:
string input = "43961529(10%)";
string result = Format(input); // "43,961,529.00 (10%)"
您应该查看 ToString() 覆盖
decimal num = 43961529;
string val = num.ToSTring("N2");
或者
string val = num.ToSTring("0.00");
有很多方法可以对字符串的输出进行排序