① java编写正则表达式,判断给定的是否是一个合法的IP地址怎么写
正则表达式匹配ip地址,实际上就是分别判断每个点直接的数字是否符合规范。
package com;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class TestRegex {
public static boolean isboolIP(String ipAddress){
String ip="(2[5][0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})\\.(25[0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})\\.(25[0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})\\.(25[0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})";
Pattern pattern = Pattern.compile(ip);
Matcher matcher = pattern.matcher(ipAddress);
return matcher.matches();
}
/** * @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String ipAddress1 = "10.";
String ipAddress2 = "0.0.0.0";
String ipAddress3 = "255.255.255.255";
String ipAddress4 = "192.168.2.1";
String ipAddress5 = "26445687";
String ipAddress6 = "nihao";
String ipAddress7 = "你好!!";
if(isboolIP(ipAddress1)){
System.out.println("IP正确");
}else{
System.out.println("IP错误");
} if(isboolIP(ipAddress2)){
System.out.println("IP正确"); }else{
System.out.println("IP错误");
} if(isboolIP(ipAddress3)){
System.out.println("IP正确"); }else{
System.out.println("IP错误");
}
if(isboolIP(ipAddress4)){
System.out.println("IP正确"); }else{
System.out.println("IP错误");
② 昆明Java培训:如何验证IP地址的有效性
【实例描述】IP地址是网络上每台计算机的标识,在浏览器中输入的网址也是要经过DNS服务器转换为IP地址才能找到服务器的,在很多网络程序中要求输入服务器IP地址或者对方连接的IP地址,IP地址的错误输入将使程序无法运行。
本实例将实现对IP地址的验证功能,实例的运行效果如图4.14所示。
【实现过程】(1)在Eclipse中新建项目CheckIP,并在其中创建一个CheckIP.java文件。
在该类的主方法中创建标准输入流的扫描器对象,接收用户输入的IP地址。
核心代码如下所示:protectedvoiddo_button_actionPerformed(ActionEvente){Stringtext=ipField.getText();//获取用户输入Stringinfo=matches(text);//对输入文本进行IP验证showMessageDialog(null,info);//用对话框输出验证结果}(2)编写IP地址的mathches()方法,该方法利用正则表达式对输入的字符串进行验证,并返回验证结果,关键代码如下所示。
publicStringmatches(Stringtext){if(text!=null&&!text.isEmpty()){//定义正则表达式Stringregex="^(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)){//返回判断信息returntext+"
是一个合法的IP地址!";}else{//返回判断信息returntext+"
不是一个合法的IP地址!";}}//返回判断信息return"请输入要验证的IP地址!";}【代码解析】本实例的关键点在于IP地址格式与数字范围的验证,用户在输入IP地址时,程序可以获取的只有字符串类型,所以本实例利用字符串的灵活性和正则表达式搭配进行IP地址格式与范围的验证。
该方法是String字符串类的方法,用于判断字符串与制定的正则表达式是否匹配。
其声明语法如下:publicbooleanmathches(Stringregex);Java程序设计经典300例XXXVIII【知识扩展】在正则表达式中,“.”代表任何一个字符,因此在正则表达式中如果想使用普通意义的点字符“.”,必须使用转义字符“”。
③ java 判断字符串是不是是IP
public static void main(String[] args) {
String myIP = "160.1.1.1";
boolean state = isIp(myIP);
System.out.println(state);
}
public static boolean isIp(String ip){//判断是否是一个IP
boolean b = false;
ip = trimSpaces(ip);
if(ip.matches("\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}")){
String s[] = ip.split("\\.");
if(Integer.parseInt(s[0])<255)
if(Integer.parseInt(s[1])<255)
if(Integer.parseInt(s[2])<255)
if(Integer.parseInt(s[3])<255)
b = true;
}
return b;
}
public static String trimSpaces(String ip){//去掉IP字符串前后所有的空格
while(ip.startsWith(" ")){
ip= ip.substring(1,ip.length()).trim();
}
while(ip.endsWith(" ")){
ip= ip.substring(0,ip.length()-1).trim();
}
return ip;
}
希望能帮到你!
④ java判断是否为合法的ip地址
/**
* 验证ip是否合法
*
* @param text
* ip地址
* @return 验证信息
*/
public String ipCheck(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地址!";
}
返回类型什么的都可以自己修改啊