文章详情页
java或scala中正则表达式的简化问题
浏览:81日期:2023-11-07 10:25:32
问题描述
现有一个需求,要求检测某个字符串是否是6个八位的十六进制数字以下划线相连,例如:'1234567F_1234567F_1234567F_1234567F_1234567F_1234567F'我自己写了一个正则进行匹配,如下:
'^[0-9a-fA-F]{8}_[0-9a-fA-F]{8}_[0-9a-fA-F]{8}_[0-9a-fA-F]{8}_[0-9a-fA-F]{8}_[0-9a-fA-F]{8}$'
这个正则可以匹配成功,但是感觉太复杂了,重复的内容过多,能不能进行简化?
问题解答
回答1:我可能这么写^([0-9a-fA-F]{8}_){5}[0-9a-fA-F]{8}$.
既然题主能用{8}了,那可以考虑把前面 八位十六进制数字+’_’ 也用个数字来表达出现次数了。
回答2:可以把[0-9a-fA-F]再简化一下:
^([^W_]{8}_){5}[^W_]{8}$
标签:
java
相关文章:
1. 如何解决docker宿主机无法访问容器中的服务?2. javascript - 微信jssdk ios下自定义onMenuShareAppMessage 分享失效,Android分享成功3. java - Access denied for user ’root’@’**.**.**.**’ (using password: NO)4. html5 geolocation 总是说位置不可用5. 老师百度网盘分享一下WampServer的包啊,我们下载几kb要下载一天的.6. vue.js - linux下怎么使用vue-cli的vue命令7. php study 安装 composer 用不了8. node.js - windows下安装webpack时出现路径问题如何解决?9. vue.js - weex 没有背景图片属性怎么办?10. SQLAlchemy 访问Mysql数据库弹出Warning,VARIABLE_VALUE,如何解决?
排行榜
