我有来自 Javascript 函数调用的一串参数
ITQPopup('100',255,'2932 NTYwNDUwMTA0MDYzMDM);3094 V0FZ','-1909432577',0,0)
正如你所看到的,这是非常糟糕的编码,有 6 个参数被传递
'100'
255
'2932 NTYwNDUwMTA0MDYzMDM);3094 V0FZ'
'-1909432577'
0
0
我会用“,”(逗号)分割字符串,但我担心第三个参数中可能有逗号。如何拆分这个字符串?
去掉括号的内容,用方括号括起来,并使用 JSON 库将其解析为数组。
您可以使用 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
如有必要,您可以进一步改进模式,以允许参数之间的空白等。但这是最简单的工作示例。
您可以使用拆分。
然后要检索您的参数,您只需将列表的前 2 个元素作为您的第 2 个参数。
然后对最后 3 个参数执行相同的操作。
然后所有剩余的可以连接起来给你的第三个参数。