You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Lua中重复正则表达式简化:匹配6组无前缀0x的十六进制数对

6对十六进制字符串匹配的简化正则写法

你原来的写法是对单个匹配单元的重复罗列,可以用量词大幅简化,同时建议加上首尾锚定避免误匹配包含目标格式的更长字符串:

最简通用写法(兼容大小写场景)

如果你的正则引擎支持i(不区分大小写)修饰符,直接使用:

^[0-9a-f]{2}(?: [0-9a-f]{2}){5}$

语法说明:

  • ^、$ 分别匹配字符串的开头和结尾,确保整个字符串完全符合格式
  • [0-9a-f]{2} 匹配2位不带前缀的十六进制字符
  • (?: [0-9a-f]{2}){5} 是非捕获组,代表「空格+2位十六进制字符」的组合重复出现5次,加上开头的1组,刚好是6对的要求

特殊场景适配

  • 如果你使用的环境中用%s指代空格(比如部分脚本的格式化占位场景),可以调整为:
    ^[0-9a-f]{2}(?:%s[0-9a-f]{2}){5}$
    
  • 如果只允许小写十六进制字符,去掉i修饰符即可;只允许大写的话把字符组改成[0-9A-F]
  • 如果允许数对之间存在多个空格/制表符,把单个空格替换为\s+即可

内容的提问来源于stack exchange,提问作者IgorKushnir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 16:45:05