项目中MAC地址经常需要格式化,有的需要分隔符,有的不需要分隔符,比较烦。自己实现了这两个方法,大佬轻喷

1、类似12ae5bac34c4中间无分隔符,需要在中间加入分隔符(:或者-),最终效果:12:ae:5b:ac:34:c4

方法:

public static String formatMac(String mac, String split) {

String regex = "[0-9a-fA-F]{12}";

Pattern pattern = Pattern.compile(regex);

Matcher matcher = pattern.matcher(mac);

if (!matcher.matches()) {

throw new IllegalArgumentException("mac format is error");

}

StringBuilder sb = new StringBuilder();

for (int i = 0; i < 12; i++) {

char c = mac.charAt(i);

sb.append(c);

if ((i & 1) == 1 && i <= 9) {

sb.append(split);

}

}

return sb.toString();

}

参数mac是无分隔符的12位mac地址,如果不符合规范会抛出异常

参数split是你需要的分隔符

2、类似12:ae:5b:ac:34:c4或者12-ae-5b-ac-34-c4中间有分隔符,需要去掉分隔符(:或者-),最终效果:12ae5bac34c4

方法:

public static String formatMac1(String mac) {

String regex = "(([a-f0-9]{2}:)|([a-f0-9]{2}-)){5}[a-f0-9]{2}";

Pattern pattern = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);

Matcher matcher = pattern.matcher(mac);

if (!matcher.matches()) {

throw new IllegalArgumentException("mac format is error");

}

return mac.replaceAll("[:-]", "");

}

参数mac是有分隔符17位地址,如果不符合那两种格式会抛出异常

都是static的,粘到自己utils类下就能直接用。

java格式化mac地址,java格式化mac地址(加分隔符,去分隔符)相关推荐

  1. java 根据ip获取mac地址,java服务器端根据ip获取客户端mac地址

    java服务器端根据ip获取客户端mac地址 2014/8/20 22:01:29  475900947  程序员俱乐部  我要评论(1) 摘要://判断系统publicStringcheckSys( ...

  2. c语言mac地址加冒号,如何通过在Excel中添加冒号来格式化单元格中的mac地址?

    如何通过在Excel中添加冒号来格式化单元格中的mac地址? 假设您收到一个包含数字列表的工作表,现在您需要通过添加冒号将所有这些数字格式设置为mac地址,如下面的屏幕截图所示. 您能做什么来实现呢? ...

  3. java 获取路由器mac_求好人帮助,如何用java语言获取像无线路由器上的MAC地址,我会重赏...

    如图所示的无线路由max地址,,挺说可以利用java的工具类java.net.NetworkInterface获取次无线网卡的max,我看了某个人的微博,他这样写:"通过java.net.N ...

  4. java 检查 mac 地址_使用Java在本地计算机上获取MAC地址

    有了我在这里找到的所有可能的解决方案以及其他答复,我将为我的解决方案做出贡献.您需要使用包含" ip"或" mac"的字符串来指定参数,具体取决于您要检查的内容 ...

  5. java h5获取ip_JS获取客户端IP地址、MAC和主机名的7个方法汇总

    今天在搞JS(javascript)获取客户端IP的小程序,上网搜了下,好多在现在的系统和浏览器中的都无效,很无奈,在Chrome.FireFox中很少搞到直接利用ActiveX获取IP等的JS脚本. ...

  6. mac 多java环境变量配置_java_Mac安装多个JDK版本并设置环境变量

    JDK6.JDK7.JDK8三个版本的汇总地址:https://pan.baidu.com/s/1pKSYv8Z 安装 JDK6安装 JDK6下载地址 见网盘 安装完毕后确认版本 JavaForOSX ...

  7. internet地址java表示

    [README] 本文主要总结 internet地址相关知识,及相关的 java 类 : 0)ip地址是什么 连接到internet的设备称为节点,计算机节点称为主机(host),每个节点至少由一个唯 ...

  8. mac下java环境变量配置

    发现一个坑:最近发现有同事按照本文方式配置jdk环境变量一直不成功,后来发现他是使用了"Oh-My-Zsh",配置文件的路径不是/etc/profile或~/.bash_profi ...

  9. mac 设置java环境变量_mac下java环境变量配置

    发现一个坑:最近发现有同事按照本文方式配置jdk环境变量一直不成功,后来发现他是使用了"Oh-My-Zsh",配置文件的路径不是/etc/profile或~/.bash_profi ...

  10. mac idea java 配置_Mac JAVA环境变量配置及IDEA JDK配置

    一.环境变量 1.下载: 地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html ...

最新文章

  1. MongoDB的update和set的用法
  2. 基于S2SH的电子商务网站系统性能优化
  3. 通过Nginx配置多域名访问
  4. php分页页数过多隐藏,织梦DEDE中内容页分页数目太多时隐藏方法
  5. [转]如何删除图片链接的蓝色边框?
  6. 车险受益人变更需要什么资料?
  7. mysql输入正确,但远程连接报错
  8. oracle 表空间配置
  9. python中非法变量名_第10p,Python中变量名的命名规则与引用
  10. matlab 不确定度计算器,不确定度计算器
  11. SQLyog安装教程详解
  12. 8年项目总结:4个G,项目经理必备模板全汇总
  13. 异步通信在生活中的例子_通信技术在日常生活中的作用
  14. 360Lib整体介绍
  15. C语言-基础入门-学习笔记(13):结构体
  16. 2021秋招IC验证面经-华为/英伟达/兆易创新/ZeKu
  17. 规律化的办公室装修也要独特
  18. 坎坷道路-程序员必须先让自己的心灵强大起来
  19. 如何解决VS下载速度慢
  20. 1 dB压缩点_噪声系数_小信号非线性的数学描述

热门文章

  1. 【爬虫入门】一键爬取LOL全部高清皮肤
  2. VScommunity2019 0x00007FFCCA14B7EC (ucrtbased.dll) (Project1.exe 中)处有未经处理的异常: 将一个无效参数传递给了将无效参数视为严重错误
  3. 鸿蒙系统手机一览表,四款华为鸿蒙系统手机推荐,后续可直接升级鸿蒙2.0
  4. 智能(语音)对话系统架构研究
  5. 这些轻松赚钱的方法,学会就能月入上万
  6. 初学OpenGL(7):颜色和光照
  7. EKL日志分析平台-kibana数据可视化
  8. 互联网行业的一些英文简称(缩写),别人家一说你又懵了!
  9. PC端微信dat还原工具源码分享【福利】
  10. 新生儿住月子中心20天患败血症 什么是败血症?有哪些危害