如何 select textbox.contain() 代码之间的字符串?

how to select the strings between the textbox.contain() code?

我实际上想做的是在文本框中查找字符串。例如,我的想法是使用 IF 查找当前字符串;

If Textbox1.Contain("<") AndAlso Textbox1.Contain(">") 那么 '我想 select < 和 > 之间的字符串执行 MySQL 命令。 结束如果

我该怎么做?谢谢大家的帮助!

我不熟悉 VB。但您可能想尝试使用正则表达式。它对于搜索和提取非常有用。 像下面这样的东西应该可以工作。

Dim strBetween As String
strBetween = Regex.Match(TextBox1.text, "<(.*?)>").Value

或者您可以按照下面的示例进行操作:

Sub Main()
    Dim regex As Regex = New Regex("<(.*?)>")
    Dim match As Match = regex.Match(TextBox1.text)
    If match.Success Then
        Console.WriteLine(match.Value)
    End If
End Sub

如果有效请告诉我。

不干扰 RegEx 的解决方案可能是这样的(这实际上取决于您的需要):

<HideModuleName>
Public Module StringExtensions

    <Extension>
    Public Function GetFirstStringBetween(ByVal sender As String,
                                          ByVal delimiterA As String,
                                          ByVal delimiterB As String) As String

        If sender.Contains(delimiterA) AndAlso sender.Contains(delimiterB) Then

            Dim rightPart As String = sender.Substring(sender.IndexOf(delimiterA) + 1)

            If rightPart.Contains(delimiterB) Then
                Return rightPart.Substring(0, sender.IndexOf(delimiterB) - 1)
            End If

        End If

        Return sender

    End Function

End Module

用法:

Dim str As String = "<Hello World> <Bye World>"
Dim result As String = str.GetFirstStringBetween("<", ">")

Console.WriteLine(result)