在我的Windows窗体应用程序的几个字段中,我要求用户提供IP地址或主机名。是否有一个很好的正则表达式(正则表达式)来验证输入的值?或者我应该考虑另一种方法吗?请注意,我希望用户输入FQDN或IP地址。
答案 0 :(得分:2)
为了使您的应用程序能够面向未来,我建议您使用IPAddress.TryParse()
来确定输入是否为IP地址。
检查“有效”主机名更加困难,因为您没有指定主机名是否必须存在。如果是这样,最简单的方法是使用Dns.GetHostEntry()
来查看是否会产生结果。根据您提供的描述,您无法获得更准确的验证。
答案 1 :(得分:1)
为什么需要请求Windows窗体应用程序的IP地址和主机名?如果这些是本地PC详细信息,您可以从以下网址获取: -
1)要获取主机名,您可以调用 Dns.GetHostName()(请参阅MSDN reference)
2)要获取IP地址,您可以通过 Dns.GetHostByName()枚举IP地址(请参阅MSDN reference)
答案 2 :(得分:1)
尝试拨打IPAddress.TryParse,如果失败,请尝试Dns.GetHostByName