weixin_40187983
2018-07-17 12:13
采纳率: 73.6%
浏览 687
已采纳

字串配对及移除-进阶功能 使用vb.net

我有一字串如下(范例字串)
dim temStr as string=AA ABB BBDDDJJ JEEEEGGG GGDDD
然后,会有一个配对子:为比如为DDD传进来

进到这个函数后会变成
前方的DDD被移除了
temStr =AAABBBBJJJEEEEGGGGGDDD
outputStr=DDD

注意点:这个字串,也有可能出现两次DDD,但只移除一个,移除前面或后面都可以

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • threenewbee 2018-07-17 13:00
    已采纳
     Module Module1
    
        Sub Main()
            Dim temStr As String = "AA ABB BBDDDJJ JEEEEGGG GGDDD"
            Dim s As String = "DDD"
            Dim outputStr As String = Nothing
            If InStr(temStr, s) <> -1 Then
                temStr = Left(temStr, InStr(temStr, s) - 1) + Right(temStr, Len(temStr) - Len(s) - InStr(temStr, s) + 1)
                outputStr = s
                Console.WriteLine(temStr)
            End If
        End Sub
    
    End Module
    
    
    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • weixin_40187983 2018-07-17 13:06

    To caozhy,请问这个是要写在Module才会没有吗?还是
    图片说明

    评论
    解决 无用
    打赏 举报
  • $(X) 2018-07-17 13:35
    '下列函数使用VB.net而非VB6 
     Public Function substrPairRemove(ByRef outputStr As String, ByVal temStr As String) As String
            Return temStr.Remove(temStr.IndexOf(outputStr), outputStr.Length) '移除前面的配对子outputStr
    
            '若需移除后面的配对子,使用下列语句
            'Return temStr.Remove(temStr.LastIndexOf(outputStr), outputStr.Length)
    End Function
    
    评论
    解决 无用
    打赏 举报