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

JavaScript如何编写匹配带完整括号或无括号数字的正则?

正则解法(JavaScript 环境可用)

你可以直接使用如下正则:

// 单个数字完整匹配场景用
const reg = /^(?:\(\d+(?:[.,]\d+)*\)|\d+(?:[.,]\d+)*)$/

// 从文本中全局提取所有符合要求的数字用
const globalReg = /(?<!\S)(?:\(\d+(?:[.,]\d+)*\)|\d+(?:[.,]\d+)*)(?!\S)/g

规则说明

  • 用^和$锚定首尾,确保是完整匹配目标内容,不会出现部分匹配的情况
  • 分两个分支匹配两类合法格式:
    • 带完整半角括号的数字:\(\d+(?:[.,]\d+)*\),严格要求左右括号同时出现,包裹中间符合格式的数字
    • 不带括号的数字:\d+(?:[.,]\d+)*,直接匹配符合数值格式的内容
  • 中间数值的规则适配你示例中的整数、带千分点、带逗号小数的所有数值格式,不会出现冗余匹配

匹配效果验证

完全符合你给出的用例要求:

  • 可匹配:(1.000.000,00)、(100)、4.000,00、4 等所有标注为需要匹配的内容
  • 不匹配:(2.000,00、300) 等所有单边括号的内容

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 22:24:04