移除”";如果字符串末尾存在,则从字符串中删除

本文关键字:字符串 存在 删除 quot 如果 移除 | 更新日期: 2023-09-27 18:08:07

从以下字符串中删除,的最佳方法是什么。

  1. 一、二、三
  2. 三、四、五
  3. 六、七、八、九、十、

    int strLength = someString.Length;
    if (strLength > 0)
    {
         findString = findString .Substring(0, str.Length - 1);
    }
    if (findString ==",")
    {
         someString.Remove(someString.Length - 1)
    }
    

我已经在StackExchange编辑器中直接快速编译了这段代码作为例子(它可能有语法错误。

请仅将上述内容作为逻辑目的。

如果有人能为上述逻辑提供优化的代码,我将不胜感激。

UPDATE:如果,出现在字符串的末尾而不是中间,我实际上想从字符串中删除它。

移除”";如果字符串末尾存在,则从字符串中删除

这个怎么样。

yourString = yourString.TrimEnd(',');

单行选项:

someString = someString.EndsWith(",") ? someString.Substring(0, someString.Length - 1) : someString;

编辑:

根据Dilshod的回答,这可以表示为

someString = someString.TrimEnd(',');

IMHO认为哪个更好。

您可以使用替换功能

 yourString.Replace(',','');

这个怎么样

if(someString.Last() == ',')
{
    someString = someString.Substring(0, someString.Length - 1);
}

这取决于你到底想做什么…用"替换"可能就是你所需要的了吗?你期望的输出值是多少?

someString = someString.Remove(someString.Length - 1);

这将删除字符串的最后一个字符。执行此操作之前,请确保检查字符串的长度。

请尝试:

 string s = "x,y,";
 if (s.Length > 0 && s.EndsWith(","))
   s = s.TrimEnd(',');

使用LastIndexOf((

string str="One,Two,Three,";
string newString=str.Remove(str.LastIndexOf(',')) //Result= "One,Two,Three";

检查下面的代码:

 string s = "one,two,three,";   
 s = s.Remove(s.LastIndexOf(","));