日期:2014-05-18  浏览次数:20708 次

如何去掉字符串中 最后一个数字之后的字符?
如何去掉字符串中 最后一个数字之后的字符?

------解决方案--------------------
使用正则表达式:

C# code
string s = Regex.Match("1.53G", @"(\.*\d+)(\w*)").Groups[1].Value;

------解决方案--------------------
去掉字符串中 最后一个数字 之后的字符 这里的最后个数字 是不是不管中间的非数字?如果真是这样的话 我觉得应该要循环 然后得到index 然后substring了吧。
------解决方案--------------------
探讨
s = Regex.Match("1.53G", @"(\.*\d+)(\w)").Groups[1].Value;
这种方式运行直接报错:startindex必须小于字符串长度

------解决方案--------------------
new Regex(@"(?<=\d+)\D(?=\D*$)").Replace(字符串, string.Empty);
------解决方案--------------------
中间还会夹杂不是数字的?比如1.5G3G
------解决方案--------------------
string result=Regex.Replace("1.53G",@"(?<=\d)[^\d]*$","");