Java程序常用算法 验证 IP 地址的有效性

文章标签: java
2014-12-29 17:03:48     12 人阅读    

【实例描述】
IP 地址是网络上每台计算机的标识,在浏览器中输入的网址也是要经过 DNS 服务器转换 为 IP 地址才能找到服务器的,在很多网络程序中要求输入服务器 IP 地址或者对方连接的 IP 地 址,IP 地址的错误输入将使程序无法运行。本实例将实现对 IP 地址的验证功能

 

【实现过程】
(1)在 Eclipse 中新建项目 CheckIP,并在其中创建一个 CheckIP.java 文件。在该类的主方 法中创建标准输入流的扫描器对象,接收用户输入的 IP 地址。核心代码如下所示:

protected void do_button_actionPerformed(ActionEvent e) {
String text = ipField.getText(); // 获取用户输入
String info = matches(text); // 对输入文本进行 IP 验证
showMessageDialog(null, info); // 用对话框输出验证结果
}


(2)编写 IP 地址的 mathches()方法,该方法利用正则表达式对输入的字符串进行验证,并 返回验证结果,关键代码如下所示。

public String matches(String text) {
if (text != null && !text.isEmpty()) {
// 定义正则表达式
String regex = "^(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|[1-9])\\."
+ "(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\."
+ "(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\."
+ "(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)$";
// 判断 IP 地址是否与正则表达式匹配

if (text.matches(regex)) {

// 返回判断信息

return text + "\n 是一个合法的 IP 地址!";
} else {
// 返回判断信息
return text + "\n 不是一个合法的 IP 地址!";
}
}
// 返回判断信息
return "请输入要验证的 IP 地址!";
}

【代码解析】
本实例的关键点在于 IP 地址格式与数字范围的验证,用户在输入 IP 地址时,程序可以获 取的只有字符串类型,所以本实例利用字符串的灵活性和正则表达式搭配进行 IP 地址格式与 范围的验证。该方法是 String 字符串类的方法,用于判断字符串与制定的正则表达式是否匹配。 其声明语法如下:
public boolean mathches(String regex);


【知识扩展】
在正则表达式中,“.”代表任何一个字符,因此在正则表达式中如果想使用普通意义的点 字符“.”,必须使用转义字符“\”。


原文地址:http://www.itmmd.com/201412/409.html
该文章由 萌萌的IT人 整理发布,转载须标明出处。

jQuery教程(6)-DOM树操作之移动元素   上一篇
下一篇  jQuery教程(3)-操作DOM之表单控件的值

精彩回复
发表评论
姓名:       

《程序员app》专门为程序员量身定做!