有时,我们可能要从一个字符串的尾部删除指定的字符串,这在C#中实现起来还较为方便。
其基本思想为:
(1)首先判断一下源字符串中是否包含要删除的字符串;
(2)分别计算源字符串和要删除的字符串的长度;
(3)获取源字符串中要删除字符串的位置deletePos;
(4)在源字符串的尾部deletePos位置开始截取与要删除字符串等长的字符串;
(5)比较截取的字符串与要删除的字符串是否相同;
(6)如果相同,则从源字符串中移除从deletePos位置开始的字符串
下面是具体的源代码:
执行效果如下图所示:
上面的算法中,如果指定要删除的字符串不再尾部,就不会执行删除操作。
实际上,还有一个较为简便的方法:
string tmpString = sourceString.SubString(0, sourceString.Length - deletingString.Length);
当然,第二个算法必须判断一下要删除的字符串是否位于源字符串的尾部,否则,所得结果不准确。