利用正则表达对IP进行排序的实现代码

发布时间 - 2026-01-11 02:19:07    点击率:

1、补零,使得可以按照字符串顺序进行比较。

2、截取保留后三位(ip地址最多就3位)。

3、利用Arrays.sort()方法对截取的字符串进行排序。。

4、去除多余的0,回复ip原样。

5、实现代码:

package IPSort;
import java.util.Arrays;
/**
 * 利用正则表达对IP进行排序,分四步
 * @author tiger
 *
 */
public class IPSortTest {
 public static void main(String[] args) {
 String[] ips = {"10.2.4.23","192.168.1.2","173.68.46.65","191.158.6.2","9.2.4.23"};
 
 System.out.println("------1、补零------");
 for (int i = 0; i < ips.length; i++) {
 ips[i] = ips[i].replaceAll("(\\d+)", "00$1");
 System.out.println(ips[i]);
 }
 System.out.println("------2、截取------");
 for (int i = 0; i < ips.length; i++) {
 ips[i] = ips[i].replaceAll("0*(\\d{3})", "$1");
 System.out.println(ips[i]);
 }
 System.out.println("------3、排序------");
 Arrays.sort(ips);
 for (int i = 0; i < ips.length; i++) {
 System.out.println(ips[i]);
 }
 System.out.println("------4、去零------");
 for (int i = 0; i < ips.length; i++) {
 ips[i] = ips[i].replaceAll("0*(\\d+)", "$1");
 System.out.println(ips[i]);
 }
 }
}

6、运行结果:

------原IP地址------
10.2.4.23
192.168.1.2
173.68.46.65
191.158.6.2
9.2.4.23
------1、加零,按字符串顺序比较------
0010.002.004.0023
00192.00168.001.002
00173.0068.0046.0065
00191.00158.006.002
009.002.004.0023
------2、截取,保留三位------
010.002.004.023
192.168.001.002
173.068.046.065
191.158.006.002
009.002.004.023
------3、排序------
009.002.004.023
010.002.004.023
173.068.046.065
191.158.006.002
192.168.001.002
------4、去零------
9.2.4.23
10.2.4.23
173.68.46.65
191.158.6.2
192.168.1.2

以上所述是小编给大家介绍的利用正则表达对IP进行排序的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# 正则表达式ip排序  # 正则表达式排序  # Javascript校验密码复杂度的正则表达式  # javascript正则表达式中分组详解  # javascript用正则表达式过滤空格的实现代码  # String字符串匹配javascript 正则表达式  # 小编  # 最多  # 在此  # 给大家  # 所述  # 给我留言  # 感谢大家  # 疑问请  # 有任何  # public  # IPSortTest  # static  # 分四步  # author  # tiger  # void  # ips  # main  # String  # args 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】  千库网官网入口推荐 千库网设计创意平台入口  如何利用DOS批处理实现定时关机操作详解  Laravel如何处理表单验证?(Requests代码示例)  中山网站推广排名,中山信息港登录入口?  JavaScript中的标签模板是什么_它如何扩展字符串功能  Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册  Linux网络带宽限制_tc配置实践解析【教程】  Python函数文档自动校验_规范解析【教程】  重庆市网站制作公司,重庆招聘网站哪个好?  如何在香港服务器上快速搭建免备案网站?  大连网站制作公司哪家好一点,大连买房网站哪个好?  详解vue.js组件化开发实践  Laravel如何记录自定义日志?(Log频道配置)  Laravel怎么发送邮件_Laravel Mail类SMTP配置教程  Swift中switch语句区间和元组模式匹配  Laravel如何处理JSON字段的查询和更新_Laravel JSON列操作与查询技巧  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  Laravel如何部署到服务器_线上部署Laravel项目的完整流程与步骤  Laravel如何与Docker(Sail)协同开发?(环境搭建教程)  如何获取上海专业网站定制建站电话?  大型企业网站制作流程,做网站需要注册公司吗?  微信小程序 require机制详解及实例代码  Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道  Laravel如何实现URL美化Slug功能_Laravel使用eloquent-sluggable生成别名【方法】  MySQL查询结果复制到新表的方法(更新、插入)  网易LOFTER官网链接 老福特网页版登录地址  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  如何用景安虚拟主机手机版绑定域名建站?  javascript基于原型链的继承及call和apply函数用法分析  Laravel如何使用Livewire构建动态组件?(入门代码)  Android实现代码画虚线边框背景效果  android nfc常用标签读取总结  油猴 教程,油猴搜脚本为什么会网页无法显示?  Internet Explorer官网直接进入 IE浏览器在线体验版网址  利用python获取某年中每个月的第一天和最后一天  Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康  Laravel如何实现数据库事务?(DB Facade示例)  Laravel怎么定时执行任务_Laravel任务调度器Schedule配置与Cron设置【教程】  网站制作企业,网站的banner和导航栏是指什么?  微信h5制作网站有哪些,免费微信H5页面制作工具?  香港服务器建站指南:免备案优势与SEO优化技巧全解析  Laravel如何使用Passport实现OAuth2?(完整配置步骤)  Laravel PHP版本要求一览_Laravel各版本环境要求对照  如何在景安服务器上快速搭建个人网站?  Laravel如何使用查询构建器?(Query Builder高级用法)  如何在万网利用已有域名快速建站?  JavaScript如何实现倒计时_时间函数如何精确控制  iOS正则表达式验证手机号、邮箱、身份证号等