legongju.com
我们一直在努力
2025-01-10 00:30 | 星期五

如何自定义C#中的Trim功能

在C#中,您可以通过编写自定义方法来实现自定义的Trim功能

using System;
using System.Linq;

class Program
{
    static void Main()
    {
        string input = "###Hello, World!###";
        char[] trimChars = { '#' };
        
        string trimmed = CustomTrim(input, trimChars);
        Console.WriteLine("Before: " + input);
        Console.WriteLine("After: " + trimmed);
    }

    static string CustomTrim(string input, char[] trimChars)
    {
        if (string.IsNullOrEmpty(input)) return input;

        int startIndex = 0;
        int endIndex = input.Length - 1;

        // 从左侧开始移除指定字符
        while (startIndex< input.Length && trimChars.Contains(input[startIndex]))
        {
            startIndex++;
        }

        // 从右侧开始移除指定字符
        while (endIndex >= 0 && trimChars.Contains(input[endIndex]))
        {
            endIndex--;
        }

        // 返回处理后的子字符串
        return input.Substring(startIndex, endIndex - startIndex + 1);
    }
}

在这个示例中,我们创建了一个名为CustomTrim的静态方法,它接受一个字符串input和一个字符数组trimChars作为参数。trimChars表示要从输入字符串的开头和结尾移除的字符集。

CustomTrim方法首先检查输入字符串是否为空或者为null,如果是,则直接返回。然后,使用两个整数变量startIndexendIndex分别表示子字符串的起始和结束位置。

接下来,我们使用两个while循环从输入字符串的开头和结尾移除指定的字符。最后,我们使用Substring方法返回处理后的子字符串。

Main方法中,我们测试了CustomTrim方法,将字符串"###Hello, World!###"和字符集{ '#' }作为参数传递。运行此程序将输出:

Before: ###Hello, World!###
After: Hello, World!

这样,您就可以根据需要自定义C#中的Trim功能。

未经允许不得转载 » 本文链接:https://www.legongju.com/article/94375.html

相关推荐

  • table在C++多线程环境下的使用注意事项

    table在C++多线程环境下的使用注意事项

    在C++多线程环境下使用std::table时,需要注意以下几点: 线程安全:std::table本身并不是线程安全的。如果多个线程同时访问和修改std::table,可能会导致数据不...

  • C++ table的性能优化策略有哪些

    C++ table的性能优化策略有哪些

    在C++中,表(通常是指数组或向量)的性能优化可以从多个方面进行。以下是一些建议: 预先分配内存:当你知道表的大小时,预先分配足够的内存空间,以避免在运行...

  • 如何自定义C++的table类

    如何自定义C++的table类

    要自定义一个C++的表格(table)类,你需要先确定你的表格类需要哪些功能。例如,你可能需要添加、删除和修改行和列,以及获取和设置单元格的值。下面是一个简单...

  • C++标准库中有无现成的table实现

    C++标准库中有无现成的table实现

    C++ 标准库没有直接提供一个名为 “table” 的容器类 std::vector:这是一个二维向量,可以用来表示一个动态大小的表格。你可以通过调整外部向量的大小来改变表格...

  • C#中Trim方法与TrimEnd、TrimStart的区别

    C#中Trim方法与TrimEnd、TrimStart的区别

    在C#中,Trim()、TrimEnd()和TrimStart()都是用于删除字符串开头和/或结尾的空白字符(如空格、制表符和换行符)的方法 Trim(): 此方法会删除字符串开头和结尾的...

  • C# Trim方法的参数有哪些

    C# Trim方法的参数有哪些

    在 C# 中,Trim() 方法用于删除字符串开头和结尾的空白字符 params char[] trimChars: 一个可选参数,表示要从字符串开头和结尾删除的字符集。如果未指定此参数,...

  • C#中如何使用Trim方法去除字符串空格

    C#中如何使用Trim方法去除字符串空格

    在C#中,Trim() 方法用于从字符串的开头和结尾移除空白字符(空格、制表符和换行符)
    以下是一些示例:
    using System; class Program
    { static v...

  • 如何测试C语言handle的稳定性

    如何测试C语言handle的稳定性

    要测试C语言中handle(句柄)的稳定性,可以采用以下方法: 单元测试:编写针对handle相关功能的单元测试,包括创建、使用和销毁句柄等操作。确保在正常和异常情...