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

如何编写匹配合法key=value格式labels的正则表达式?

正则表达式匹配key=value格式的labels

需要编写正则规则匹配key=value形式的labels,要求:

  • key和value仅能包含字母、数字及连字符-
  • 整个字符串只能有一个=
  • key和value中不能包含空格

之前尝试的正则/(-*.)=(-*.)/g无法正确匹配a-b=c-d这类格式,没法识别出正确的key和value。

合法输入示例

a=b
1=1
a-b=c-d
a=b-c

非法输入示例

foo=bar
ba=r=b=az
b = z
a-b=c - d
te:st=st:ring

正确的正则表达式

使用以下正则可以满足需求:

/^[a-zA-Z0-9-]+=[a-zA-Z0-9-]+$/gm

规则说明

  • ^:锚定字符串(或行)的开头,确保没有前置空格或无效字符
  • [a-zA-Z0-9-]+:匹配一个或多个合法字符(字母、数字、连字符),作为key部分
  • =:精确匹配唯一的等号,保证整个字符串只有一个分隔符
  • [a-zA-Z0-9-]+:匹配合法的value部分
  • $:锚定字符串(或行)的结尾,避免后置无效字符或空格
  • g:全局匹配,用于处理多行文本中的多个label
  • m:多行模式,让^和$分别匹配每行的开头和结尾

这个正则会严格匹配符合要求的key=value对,拒绝所有包含空格、多个等号、特殊字符的非法输入。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 01:25:27