2013-07-09 82 views

回答

4

简单:

If testString.Contains("ABC") Then 
    Debug.Print "ABC" 
ElseIf testString.Contains("XYZ") Then 
    Debug.Print "XYZ" 
Else 
    Debug.Print "Other" 
End If 

您不能检查这种功能导致Select Case语句,因此使用简单的if语句是你最好的选择更加容易。

你总是可以做到这一点:

Select Case True 
    Case testString.Contains("ABC") : Debug.Print("ABC") 
    Case testString.Contains("XYZ") : Debug.Print("XYZ") 
    Case Else : Debug.Print("Other") 
End Select 

但它会在非常具体的情况下,只有工作,还不是很清楚和必要的。

+0

@ CJ7请考虑[标记任何答案是正确的(http://meta.stackexchange.com/a/5235/208536)和upvoting如果这是对你有用。 – SysDragon

3

在VB.NET,你可以使用这个Select

Select Case True 
    Case testString.Contains("ABC") 
     Debug.Print("ABC") 
    Case testString.Contains("XYZ") 
     Debug.Print("XYZ") 
    Case Else : Debug.Print("Other") 
End Select 

然而,在这种情况下,我宁愿一个简单的If条款。

If testString.Contains("ABC") Then 
    Debug.Print("ABC") 
ElseIf testString.Contains("XYZ") Then 
    debug.Print("XYZ") 
Else 
    Debug.Print("Other") 
End If 

这会更清晰,并与C#兼容。 switch只允许常量表达式。

+0

因为这部作品在这个具体的例子,它不会对功能的有效方法,它返回不仅仅是一个布尔类型总是不同的值。 – SysDragon

+0

@SysDragon:当然,你不能用'选择... Case'的一切。但在更多的情况下比在C#中。 OP希望将它与一个返回'Boolean'的函数一起使用。 –

相关问题