我有一个字符串,例如如何从字符串中删除特定位置的字符?
Dim str as string = xxxxxxxxxxxxxxxxxxxx£xxx£xxxx**£**xxxxxxxxxx
我想删除总是处于特定位置(例如第11位)的粗体。整个字符串是一个很长的字符串,总是会改变大小,不能从头开始计数。无法使用替换,在其他位置可能有相同的字符,我不想删除。
SOLUTION:RST昏暗作为字符串= str.Remove(str.Length - 11,1)
感谢。
大号
我有一个字符串,例如如何从字符串中删除特定位置的字符?
Dim str as string = xxxxxxxxxxxxxxxxxxxx£xxx£xxxx**£**xxxxxxxxxx
我想删除总是处于特定位置(例如第11位)的粗体。整个字符串是一个很长的字符串,总是会改变大小,不能从头开始计数。无法使用替换,在其他位置可能有相同的字符,我不想删除。
SOLUTION:RST昏暗作为字符串= str.Remove(str.Length - 11,1)
感谢。
大号
编辑:哎呀,我不知道我在想什么对第一部分..
第一部分的正确版本是:
海峡= str.Substring(0,str.Len - 13)+ str.Substring(str.Len-11);
还有可能对String.Delete功能,使您可以使用一个负数从字符串的结尾表示的字符数过载 - 我知道C#相当于做..
谢谢菲利普..你说得很对..其实很简单,当我知道怎么做的时候..在这里我得到了.. Dim rst As String = str.Remove(str.Length - 11,1) – lawphotog 2012-04-20 18:54:35
是的,这可能是一个更直接的方式来做到这一点..好赶上! – 2012-04-20 18:56:27
@LaurenceNyein:您应该添加该代码作为答案! – 2012-04-20 20:20:42
如果它总是会从你能做到这一点结束的第11字...
Dim strTargetString As String = "xxxYxxxxxxxxxx"
Dim strTargetString2 As String = "xxxxxxxYxxxxxxxxxx"
Dim strResult As String = Mid(strTargetString, 1, (Len(strTargetString) - 11)) & Microsoft.VisualBasic.Right(strTargetString, 10)
Dim strResult2 As String = Mid(strTargetString2, 1, (Len(strTargetString2) - 11)) & Microsoft.VisualBasic.Right(strTargetString, 10)
注意String.SubString是一个更现代的方法比中旬,我却用它出于偏好和榜样。
感谢您的帮助! – lawphotog 2012-04-20 18:55:42
这种使用是用正则表达式替换操作相当简单前瞻:
Dim str as String = "xxxxxxxxxxxxxxxxxxxx£xxx£xxxx£xxxxxxxxxx"
Dim str2 as String = Regex.Replace(str, "£(?=.{10}$)", String.Empty)
这将针对单个字符,然后再任意十个字符的字符串的结尾,并与String.Empty
值来替换它(或只是""
如果你愿意)。
感谢帮助的人! – lawphotog 2012-04-20 18:56:19
这个怎么样http://msdn.microsoft.com/en-us/library/kxbw3kwc.aspx – Rrjrjtlokrthjji 2012-04-20 18:37:35
良好的链接感谢感谢 – lawphotog 2012-04-20 18:58:16