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

如何使用正则表达式校验key:value;格式的字符串是否合法

键值对格式校验正则表达式

适用规则

匹配满足以下要求的字符串:

  • 单组键值对为键:值格式,键和值之间用英文冒号分隔
  • 多组键值对之间用英文分号分隔
  • 字符串末尾的英文分号可选
  • 键、值本身不允许包含英文冒号、英文分号

最终正则

^([^:;]+:[^:;]+)(;[^:;]+:[^:;]+)*;?$

正则拆解说明

  • ^:匹配字符串起始位置,避免前缀非法字符
  • ([^:;]+:[^:;]+):匹配1组合法的键值对
    • [^:;]+:匹配键,+限定键非空,且内容不允许出现英文冒号、分号
    • ::固定匹配键值之间的英文冒号分隔符
    • [^:;]+:匹配值,规则和键一致
  • (;[^:;]+:[^:;]+)*:匹配0组或多组后续键值对,每组必须以英文分号开头,后跟合法键值对
  • ;?:匹配末尾可选的英文分号
  • $:匹配字符串结束位置,避免后缀非法字符

适配调整说明

  • 若允许键/值为空,将所有[^:;]+替换为[^:;]*即可
  • 若不允许键/值中出现空白字符,将所有[^:;]替换为[^:;\s]即可

用例验证结果

有效用例(全部匹配成功)

  • k1:v1;k2:v2;
  • k1:v1;k2:v2
  • somekey:value;k2:v2;

无效用例(全部匹配失败)

  • k1,v1;k2,v2 (键值使用逗号分隔,不符合规则)
  • k1 v1; k2 v2; (键值使用空格分隔,不符合规则)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 10:27:04