删除字符串c#中的最后一个特定字符

use*_*186 69 c# trim

我使用WinForms c#.我有如下字符串值,

string Something = "1,5,12,34,";
Run Code Online (Sandbox Code Playgroud)

我需要删除字符串中的最后一个逗号.那我怎么能删除它?

Kin*_*ing 211

试试string.TrimEnd():

Something = Something.TrimEnd(',');
Run Code Online (Sandbox Code Playgroud)

  • 这是最好的解决方案,因为它适用于所有字符串,包括您提前不知道的情况,如果字符串确实以逗号结尾,或者不是. (4认同)
  • 这就是为什么我仍在寻找解决方案的原因,即使我可以轻松编写自己的东西也是如此。通常有人解决了它。:) (3认同)
  • 所以单引号不是错误。今天我了解到char和string分别用单引号和双引号定义。 (2认同)

Son*_*nül 16

King King的回答当然是正确的.还添Schmelter的评论也是你的情况很好的建议.

但是如果你想真正 删除字符串中的最后一个逗号,你应该找到最后一个逗号的索引并删除like;

string s = "1,5,12,34,12345";
int index = s.LastIndexOf(',');
Console.WriteLine(s.Remove(index, 1));
Run Code Online (Sandbox Code Playgroud)

输出将是;

1,5,12,3412345
Run Code Online (Sandbox Code Playgroud)

这里一个demonstration.

你不太想要这种方式,但我想指出它.请记住,String.Remove方法不会删除原始字符串中的任何字符,它会返回新的字符串.


小智 6

尝试 string.Remove();

string str = "1,5,12,34,";
string removecomma = str.Remove(str.Length-1);
MessageBox.Show(removecomma);
Run Code Online (Sandbox Code Playgroud)