【发布时间】:2012-06-12 14:59:01
【问题描述】:
要删除尾随部分,我使用代码
str.substring(0,str.length -2)
有没有更好的方法?我特别不喜欢使用 str.length。
编辑 我希望问题尽可能简短和简单,我想我只是忽略了一些 String 方法。我试图更精确。
我需要从字符串末尾删除给定数量的字符。我不想关心字符是什么,也不想引入删除更多字符的风险。
如果数字大于字符串长度,我们就会有一个异常(字符串应该更早验证)。
我没有问题,尤其是长度问题,但是两次引用一个变量(想象一个函数而不是一个变量)。我也不喜欢减法的必要性,但这只是个人喜好。
VB.NET 解决方案
问题被标记为 vb.net 所以有 vb.net 代码(应该在一个模块中):
<System.Runtime.CompilerServices.Extension> _
Public Shared Function RemoveFromEnd(stringValue As String, removedCharacters As Integer) As String
Return stringValue.Substring(0, stringValue.Length - removedCharacters)
End Function
【问题讨论】:
-
trailing part是什么意思? -
为了删除字符串的最后 x 个字符,您必须知道它的长度。如果您只是不喜欢在代码中看到这一点,那么您可以编写一个扩展方法来隐藏计算。
-
@Duane:我的意思是删除最后的 x 个字符。
-
str.Length - 如果您的原始字符串长度为
-
您是否有特别的原因不喜欢使用
str.length?