Vb.net 将一行中的多个整数读取到列表框
我试图读取列表框行中的所有整数Vb.net 将一行中的多个整数读取到列表框,vb.net,visual-studio-2010,visual-studio,visual-studio-2012,Vb.net,Visual Studio 2010,Visual Studio,Visual Studio 2012,我试图读取列表框行中的所有整数 Dim scores As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(line, "\d+") 我已经用这样的格式保存了分数 姓名00 00 00 00 我可以用正则表达式来读取3个整数,每个数之间有一个空格吗?存储整数的文件是一个记事本文件。不带正则表达式的方法: Const分隔符为String=”“c 将行作为字符串“在此处读取文件中的行
Dim scores As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(line, "\d+")
我已经用这样的格式保存了分数
姓名00 00 00 00
我可以用正则表达式来读取3个整数,每个数之间有一个空格吗?存储整数的文件是一个记事本文件。不带正则表达式的方法:
Const分隔符为String=”“c
将行作为字符串“在此处读取文件中的行”
作为新列表的尺寸编号(Int32)()
将值设置为字符串()=line.Split(分隔符)'将值拆分为数组
将每个值作为值中的字符串
Dim tempnumber为Int32
如果Int32.TryParse(值,tempnumber)=True,则
“只接受数字
数字。添加(临时数字)
如果结束
下一个
使用匹配
而不是匹配
,并将正则表达式的结果存储到匹配集合中
Sub Main()
Dim scores As String = "00 13 00"
Dim score As System.Text.RegularExpressions.MatchCollection = System.Text.RegularExpressions.Regex.Matches(scores, "\d+")
For i As Integer = 0 To score.Count - 1
Console.WriteLine(score.Item(i))
Next
Console.ReadLine()
End Sub
结果:
@Alexander是的,它是一个文本文件。但是我必须在我的赋值中使用它。这个正则表达式可以满足您的需要,我很确定,Regex.IsMatch(行“^\d{2}\s{1}\d{2}\s{1}\d{2}$”)您现在可以根据需要赋予它功能。@Timmy此表达式只读取我希望它读取的行的第一个整数them@user4838397我刚刚快速测试了我给你的表达式,如果表达式匹配,则返回我输入的内容。也许我不是100%清楚你想要什么。另外,Regex.IsMatch
将测试给定的行是否与正则表达式匹配,因此它是一个布尔值,将返回True
或False
。我不确定这是否有帮助,如果没有,我不清楚你想要什么。