我有一个来自 Javascript 函数调用的参数字符串
ITQPopup('100',255,'2932 NTYwNDUwMTA0MDYzMDM);3094 V0FZ','-1909432577',0,0)
如您所见,这是非常糟糕的编码,传递了 6 个参数
'100'
255
'2932 NTYwNDUwMTA0MDYzMDM);3094 V0FZ'
'-1909432577'
0
0
我会用“,”(逗号)分隔字符串,但恐怕第三个参数中可能有逗号。如何拆分这个字符串?
最佳答案
您可以使用 RegEx 轻松完成此操作。例如:
Dim input As String = "ITQPopup('100',255,'2932 NTYwNDUwMTA0MDYzMDM);3094 V0FZ','-1909432577',0,0)"
Dim pattern As String = "ITQPopup\('(.*?)',(.*?),'(.*?)','(.*?)',(.*?),(.*?)\)"
Dim m As Match = Regex.Match(input, pattern)
If m.Success Then
Dim param1 As String = m.Groups(1).Value
Dim param2 As String = m.Groups(2).Value
Dim param3 As String = m.Groups(3).Value
Dim param4 As String = m.Groups(4).Value
Dim param5 As String = m.Groups(5).Value
Dim param6 As String = m.Groups(6).Value
End If
如有必要,您可以进一步改进模式,以允许参数之间有空格等。但这是最简单的工作示例。
关于.net - 如何在 VB.Net 中拆分复杂的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18855177/