【发布时间】:2016-04-29 08:17:25
【问题描述】:
我是编程新手,想问一下是否可以将下面的字符串分开。我正在使用 Visual Basic。基本上我下面有两个字符串:
字符串 1:gOldStr= TEDDYBEARBLACKCAT
字符串 2 = gNewStr= BLACKCATWHITECAT
我想通过查看字符串 1 中的确切值来分隔字符串 2
所以我的 String2 是字符串 1 = BLACKCAT 的一部分
新的字符串 2 = WHITECAT
我已经尝试过下面的脚本,但它并不总是有效。可以建议我更好的逻辑吗?谢谢2
For i=1 to Len(gOldStr)
TempStr = Left$(gNewStr,i)
Ctr1 = InStr(gOldStr, TempStr)
gTemporary = Mid$(gOldStr,Ctr1)
gTemporary = Trim(gTemporary)
Ctr2 = StrComp(gOldStr, gTemporary)
If Ctr2=1 Then
gTemporary2 = Replace(gNewStr,gTemporary,"")
Exit For
End If
Next i
【问题讨论】:
-
欢迎来到 Stackoverflow。使用
InStr将在“TEDDYBEARBLACKCAT”中搜索“BLACKCATWHITECAT”。您需要分隔 String1 中的单词,然后将这些单词放入Array或为每个搜索词设置单独的字符串。 -
您好,Jean,感谢您的回复。实际上,当我尝试执行 Ctr1 = InStr(gOldStr, gNewStr) 时,它会以 0 位置返回给我。虽然我也无法手动分隔单词,因为这两个数据都是由用户输入的。
-
@nopio 它给你 0,因为 InStr 检查整个 gNewStr 是否在 gOldStr 内,这不是因为它们不完全相同。请参阅下面的答案...