vb.net文本文件按行拆分为组合框

时间:2016-03-27 11:44:16

标签: vb.net split text-files

vb.net文本文件按行拆分为组合框

test
cool
username: username1
username: username2
username: username3
username: username4
username: username5
test

我想在添加组合框中提取所有5个用户名

1 个答案:

答案 0 :(得分:2)

您可以将这些行读入数组,然后使用void WAVELET (float In , float Freq ):float { out = in * coefficients*a1*b1*c1*d1/Freq; return in; } void MAKE_SPECTROGRAM2D(float[] stream) { for (var bands = 0, bands < 1024 , bands++) for (var i = 0, i < AudioStream.Length , i++) var spectrogram2D[i,j] = WAVELET(AudioStream[i] , bands*22050/1024) } 来匹配用户名行。

从推出开始:

Regex

在代码文件的顶部,然后您可以使用以下代码:

Imports System.IO
Imports System.Text.RegularExpressions

Dim FileLines() As String = File.ReadAllLines("path to file") 'Read all the lines of the file into a String array. Dim RgEx As New Regex("(?<=username\:\s).+", RegexOptions.IgnoreCase) 'Declare a new, case-insensitive Regex. For Each Line As String In FileLines 'Loop through every line. Dim m As Match = RgEx.Match(Line) 'Match the Regex pattern. If m IsNot Nothing AndAlso m.Success = True Then 'Have we found a match? ComboBox1.Items.Add(m.Value) 'Add the match to the ComboBox. End If Next 是一个能够根据指定的模式匹配子串的类。

我使用的模式可以这样解释:

Regex

(?<=username\:\s).+:匹配以(?<=username\:开头的行。

username::匹配空格字符(在\s之后)。

username::在此之后匹配任何字符组合(这是您的用户名,以及从.+返回的内容)。

在线代码测试: http://ideone.com/xnVkCc

详细了解正则表达式: MSDN - .NET Framework Regular Expressions

希望这有帮助!

修改

如果您想匹配 {/ strong> m.Valueusername:,可以尝试使用以下模式声明user name:

Regex