我有一个来自Javascript函数调用的参数字符串
ITQPopup('100',255,'2932 NTYwNDUwMTA0MDYzMDM);3094 V0FZ','-1909432577',0,0)
正如您所看到的,编码非常差,有6个参数被传递
'100'
255
'2932 NTYwNDUwMTA0MDYzMDM);3094 V0FZ'
'-1909432577'
0
0
我会将字符串拆分为“,”(逗号),但我担心第3个参数中可能有逗号。怎么会分裂这个字符串?
答案 0 :(得分:2)
删除括号的内容,将其包装在方括号中,并使用JSON库将其解析为数组。
答案 1 :(得分:2)
您可以使用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 :(得分:1)
您可以使用Split。
然后要检索您的参数,您只需将列表中的前2个元素作为前2个参数。
然后对最后3个参数执行相同操作。
然后可以连接剩下的所有剩余部分以提供第3个参数。