IP(v4)地址的正则表达式

Ste*_*hRT 3 regex vb.net

我试图从HTML页面使用正则表达式的IP地址:

<html>
  <head><title>Current IP Check</title></head>
  <body>Current IP Address: xx.xxx.xxx.xx</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我的VB.Net代码目前是这样的:

Using wClient As New WebClient
   ip = wClient.DownloadString("http://checkip.dyndns.org/")
   ip = Regex.Match(ip, "^[+-]?(\d+(\.\d+)?|\.\d+)$", RegexOptions.Singleline).ToString
End Using
Run Code Online (Sandbox Code Playgroud)

但是,最终结果对于IP来说并不算什么.

我只是想获得xx.xxx.xxx.xx

我会做错什么?

Neo*_*isk 7

IP地址的正则表达式比您概述的要复杂得多.但没有理由重新发明轮子.请查看正则表达式示例,以下是解释所有内容的示例:

\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b
Run Code Online (Sandbox Code Playgroud)