分裂一个字符串

l--*_*''' 0 vb.net asp.net

我有以下字符串:

http://pastebin.com/d29ae565b

我需要将每个值分开并将其放入数组中.通常它会由".split"完成.但我需要按此顺序拆分:0,50,100,200,400等.

有谁知道如何做到这一点?请注意我需要在VB中执行此操作

换句话说,我需要它来读取从左到右的行.我没有问题分离每个数字,我只需要它以指定的顺序阅读它.

谢谢大家的建议.香港专业教育学院尝试了正则表达式,我忘了提到每行后有一个换行符.我不确定这是否会影响正则表达式,但无论如何,在我执行正则表达式后,我得到以下顺序:0,6.65,84 ...... ??,35 ....等等

我没有收到我上面所述的订单

预期结果:0,50,100,100,200,400,218,9.8,???,6.65,6.31等......

我将通过最初将字符串拆分为单独的行来遵循下面的一些建议.这段代码几乎可以做到:

Dim fields() As String
        fields = calculationText.Split(vbCrLf)
Run Code Online (Sandbox Code Playgroud)

不幸的是由于某种原因,空间丢失了.当我查看数组时,数字之间的所有空格都会丢失.为什么?????????

Dil*_*e-O 5

听起来像你需要拆分两次.逐行将文件读入数组,或者更好地读取List(Of String),然后遍历List中的每个"行"并根据空间进行后续拆分.

在浏览每一行时,可以将第一个元素添加到结果数组列表中.

编辑:因为你有一些麻烦,试试这个代码,看看它是否适合你:

Dim lstResulst As New List(Of String)
Dim lstContent As New List(Of String)
Dim LineItems() As String
Dim objStreamReader as StreamReader

objStreamReader = File.OpenText(FILENAME)

While objStreamReader.Peek() <> -1
  lstContent.Add(objStreamReader.ReadLine())
End While

objStreamReader.Close()
Run Code Online (Sandbox Code Playgroud)

这会将每行的所有文件行读入List(Of String).然后从那里你可以这样做:

For Each CurrLine As String In lstContent
   LineItems = CurrLine.Split(Char.Parse(" "))
   lstResults.Add(LineItems(0))
Next
Run Code Online (Sandbox Code Playgroud)

这会将每个项目拆分成一个数组,您可以将拆分的第一项转储到一个新的List(Of String)中.您可以轻松地将其转储到Decimals列表或其他任何内容中,并简单地将CurrLine.Split包装在适当的转换方法周围.该行的其余项目也将在LineItems数组中可用.