c# - 从 .NET 中的字符串末尾修剪字符串 - 为什么缺少这个?

标签 c# .net string

我一直都需要这个,并且一直对 Trim()、TrimStart() 和 TrimEnd() 函数不将字符串作为输入感到沮丧。你在一个字符串上调用 EndsWith() ,并找出它是否以另一个字符串结尾,但是如果你想从末尾删除它,你必须做子字符串黑客来做到这一点(或调用 Remove() 并祈祷它是唯一的例子……)

为什么 .NET 中缺少此基本功能?其次,任何关于实现它的简单方法的建议(最好不是正则表达式路由...)

最佳答案

编辑 - 包含在方便的扩展方法中:

public static string TrimEnd(this string source, string value)
{
    if (!source.EndsWith(value))
        return source;

    return source.Remove(source.LastIndexOf(value));
}

所以你可以做 s = s.TrimEnd("DEF");

关于c# - 从 .NET 中的字符串末尾修剪字符串 - 为什么缺少这个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7170909/

相关文章:

c# - WPF 应用程序中的 DialogResult

c# - 如何将结构数组从 C++ dll 返回到 C#

java - IO 的 GoF 装饰器模式用例和示例

.net - 当叠加两个相同大小的图像时,其中一个会偏移

.net - 调试托管应用程序崩溃

java - 获取冒号后的数据,分行显示

c# - xaml 没有看到我的 ivalueconverter

c# - 找到多个与请求 http post 方法匹配的操作

c# - 将一些属性和一些逻辑混搭在一起

PHP 检查字符串是否包含不带 http 的 url ://