只有当字符串中包含,
时,才必须在字符串末尾删除零。我可以使用Regex完成以下所有操作。
所以
123,90 -> 123,9
123,00 -> 123,
123,0 -> 123,
123,0090 ->123,009
00,34-> 00,34
ABC -> ABC
答案 0 :(得分:1)
答案 1 :(得分:1)
请记住, RegEx 用于测试模式。它将返回true或false,而不是对字符串本身执行任何更改。
如果要搜索字符串末尾的字符,可以使用$符号构建正则表达式
如果要测试此实时
,请使用this tool因此,每次最后有0时,此RegEx将返回 true , false 否则
0$
现在,如果你需要删除那个零,你需要执行TRIM
"129,0".TrimEnd('0')
注意TrimEnd函数中的引号。这是因为此方法需要char而不是字符串。
问候! 杆
答案 2 :(得分:0)
好像你使用,
作为数字小数分隔符。因此,您可以使用double.TryParse
和double.ToString
来获得所需的结果:
string str = "123,0090";
double d;
if (double.TryParse(str, out d))
str = d.ToString();
如果要确保将逗号用作小数分隔符:
if (double.TryParse(str, NumberStyles.Any, new CultureInfo("de-DE"), out d))
str = d.ToString();
如果您使用decimal.TryParse
,则会保留尾随零的数量,在这种情况下不需要。 Msdn:"缩放系数也会保留十进制数中的任何尾随零。 ....可能会通过ToString
方法显示...."
答案 3 :(得分:0)
String line = "120,90";
String newLine = line.replaceAll("0*$", "");
//120,9
删除任何' 0'从字符串表达式的结尾开始。将所有0替换为字符串末尾的空格,直到字符串中的第一个非0字符。
答案 4 :(得分:0)
要在 Javascript 中执行此操作,您可以执行以下操作:
'0.000015000000'.replaceAll(/0*$/g, "")
返回“0.000015”