Imports System
Imports System.Collections.Generic
Public Class Test
shared function mysplit(s as string) as List(of string)
dim arr as string() = s.Split(",")
dim list as List(of string) = new List(of string)
dim b as boolean = false
dim buf as string
for each i as string in arr
if b then
if i.endswith(chr(34)) then
list.add(buf & "," & i)
buf = ""
b = false
else
buf = buf & "," & i
end if
else
if i.startswith(chr(34)) then
if i.endswith(chr(34)) then
list.add(i)
else
buf = i
b = true
end if
else
list.add(i)
end if
end if
next
return list
end function
Public Shared Sub Main()
' your code goes here
dim s as string = """aaa"",""ddd"",""eee,eee,eee,"",""rrr"",123,"""""
dim r as List(of string) = mysplit(s)
for each s as string in r
Console.WriteLine(s)
next
End Sub
End Class
SW1wb3J0cyBTeXN0ZW0KSW1wb3J0cyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYwoKUHVibGljIENsYXNzIFRlc3QKCXNoYXJlZCBmdW5jdGlvbiBteXNwbGl0KHMgYXMgc3RyaW5nKSBhcyBMaXN0KG9mIHN0cmluZykKCQlkaW0gYXJyIGFzIHN0cmluZygpID0gcy5TcGxpdCgiLCIpCgkJZGltIGxpc3QgYXMgTGlzdChvZiBzdHJpbmcpID0gbmV3IExpc3Qob2Ygc3RyaW5nKQoJCWRpbSBiIGFzIGJvb2xlYW4gPSBmYWxzZQoJCWRpbSBidWYgYXMgc3RyaW5nCgkJZm9yIGVhY2ggaSBhcyBzdHJpbmcgaW4gYXJyCgkJCWlmIGIgdGhlbgoJCQkJaWYgaS5lbmRzd2l0aChjaHIoMzQpKSB0aGVuCgkJCQkJbGlzdC5hZGQoYnVmICYgIiwiICYgaSkKCQkJCQlidWYgPSAiIgoJCQkJCWIgPSBmYWxzZQoJCQkJZWxzZQoJCQkJCWJ1ZiA9IGJ1ZiAmICIsIiAmIGkKCQkJCWVuZCBpZgoJCQllbHNlCgkJCQlpZiBpLnN0YXJ0c3dpdGgoY2hyKDM0KSkgdGhlbgoJCQkJCWlmIGkuZW5kc3dpdGgoY2hyKDM0KSkgdGhlbgoJCQkJCQlsaXN0LmFkZChpKQoJCQkJCWVsc2UKCQkJCQkJYnVmID0gaQoJCQkJCQliID0gdHJ1ZQoJCQkJCWVuZCBpZgoJCQkJZWxzZQoJCQkJCWxpc3QuYWRkKGkpCgkJCQllbmQgaWYKCQkJZW5kIGlmCgkJbmV4dAoJCXJldHVybiBsaXN0CgllbmQgZnVuY3Rpb24KCQoJUHVibGljIFNoYXJlZCBTdWIgTWFpbigpCgkJJyB5b3VyIGNvZGUgZ29lcyBoZXJlCgkJZGltIHMgYXMgc3RyaW5nID0gIiIiYWFhIiIsIiJkZGQiIiwiImVlZSxlZWUsZWVlLCIiLCIicnJyIiIsMTIzLCIiIiIiCgkJZGltIHIgYXMgTGlzdChvZiBzdHJpbmcpID0gbXlzcGxpdChzKQoJCWZvciBlYWNoIHMgYXMgc3RyaW5nIGluIHIKCQkJQ29uc29sZS5Xcml0ZUxpbmUocykKCQluZXh0CglFbmQgU3ViCkVuZCBDbGFzcw==