2017-08-16 59 views
1

我可以拆分字符串清单非常好,但是现在我想在每个循环中相应地将内容放入3个不同的变量中。拆分字符串并将内容存储到3个不同的变量中

这是一个列表变量我使用,但我只是张贴在一个字符串下面显示结构。

myString = "Toyota, Truck, 1996" 

Dim var1, var2, var3 as String 

Dim myString As String() = item1.Split(New Char() {","c}) 


Dim myValue As String 

For Each myValue In myString 

    Console.WriteLine(myValue) 

Next 

==

Result should be : 

var1 = Toyota 
var2 = Truck 
var3 = 1996 
+0

如果你不想把它放入容器,你将不得不做手工,比如'VAR1 = myvalue的(0)... VAR2 = myvalue的(1 )'等等。此外,当这样做总是检查,如果你有你的阵列中的元素的期望数量 – litelite

+0

我需要动态地做到这一点!我如何把它放在一个容器中? – Alice

+0

这将取决于容器。而容器的使用取决于你想如何使用数据。 – litelite

回答

0

它很简单。试试这个:

Dim myString As String() = item1.Split(New Char() {","c}) 
Dim Vehicle As String = myString(0) 
Dim Type As String = myString(1) 
Dim Year As String = myString(2) 

编辑1:如您有评论你使用的是List(Of String)变量,让我们假设ListOfDetails是一个在问题。然后

For Each detail as String In ListOfDetails 
    Dim myString As String() = detail.Split(New Char() {","c}) 

    'Store values in variable like this if you want to 
    Dim Vehicle As String = myString(0) 
    Dim Type As String = myString(1) 
    Dim Year As String = myString(2) 
    'And print them using 
    Console.WriteLine(Vehicle) 
    Console.WriteLine(Type) 
    Console.WriteLine(Year) 

    'Else you can print them directly using this 
    For Each myValue In myString 
    Console.WriteLine(myValue) 
    Next 
Next 
+0

@没人,它不起作用。它给了我意想不到的价值! – Alice

+0

@爱丽丝你可以定义_unexpected values_ – litelite

+0

@爱丽丝[见这](https://dotnetfiddle.net/Db1FJs)。它的工作原理 –

1
' List holding multiple strings 
Dim myListVariable As New List(Of String) From { 
    "Toyota, Truck, 1996", 
    "Ford, Car, 1998", 
    "Harley, Motorcycle, 1990"} 
' Loop over each string 
For Each myString In myListVariable 
    ' Split each string into another List 
    Dim myList = myString.Split({",", " "}, StringSplitOptions.RemoveEmptyEntries).ToList() 
    Console.WriteLine() 
    ' assign to individual variables ... 
    Dim var1 = myList(0) 
    Dim var2 = myList(1) 
    Dim var3 = myList(2) 
    ' ... or iterate over items and print 
    For Each myValue In myList 
     Console.WriteLine(myValue) 
    Next 
Next 

输出


丰田
卡车
1996年

福特
汽车
1998年

哈雷
摩托车
1990年

相关问题