我正在使用正则表达式从网站上删除数字,然后我想通过4来获取该数字。
Dim thepage As String = postreqreader.ReadToEnd
Dim r As New System.Text.RegularExpressions.Regex("Views"">\(....)")
Dim matches As MatchCollection = r.Matches(thepage)
Dim kwota As String
For Each itemcode As Match In matches
kwota = itemcode.Groups(1).Value
Next
Dim stringToInteger As Integer = Convert.ToInt32(kwota)
之后我发现错误:An unhandled exception of type 'System.FormatException' occurred in mscorlib.dll
。我不知道该怎么做。我使用的是Microsoft Visual Studio,VB .net。 kwota
变量包含15.2
作为字符串。
答案 0 :(得分:1)
Val功能非常强大。尝试:
Dim stringToInteger As Integer = CInt(Val(kwota))
答案 1 :(得分:0)
如果要转换为整数,请将字符串转换为float,然后转换为整数。
Dim stringToInteger As Integer = Convert.ToInt32(Convert.ToDouble(kwota))
答案 2 :(得分:0)
更改你的正则表达式。你只需要5个点可以写成:\d+\.\d+
这意味着,匹配一个或多个数字,然后是一个字面句点,后跟一个或多个数字。这样你知道你正在抓取一个数字而不是该网页上的其他任何废话。
免责声明:我必须看到HTML,看看正则表达式是否符合它的编写方式。