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

PrimeNG InputMask v17 允许2-3位数字的掩码无法正常工作

解决PrimeNG InputMask血压格式匹配问题

你当前的mask="99?9/99?9"写法不符合PrimeNG InputMask的语法逻辑,导致组件强制要求每部分必须输入3位数字。PrimeNG里?标记的是它前面的字符为可选,而不是后面的,所以你写的99?9实际是要求前两位必填,第三位可选,但组件的输入逻辑可能会引导你补全第三位,达不到你要的灵活格式效果。

给你两种可行的解决方案:

方案一:调整mask语法

把mask改成9?99/9?99,这样每一部分都支持2位或3位数字:

<p-inputMask
  formControlName="vitalPriorBp"
  mask="9?99/9?99"
  autoClear="false"
  class="w-full border-round-2xl"
/>

9?99的意思是第一位数字可选,后两位必填,既支持输入99(只填后两位),也支持输入999(三位全填),完全覆盖你需要的三种格式。

方案二:使用正则模式(更直观)

切换到正则匹配模式,直接用正则表达式定义允许的格式,灵活性更高:

<p-inputMask
  formControlName="vitalPriorBp"
  mask="^\d{2,3}/\d{2,3}$"
  mode="regex"
  autoClear="false"
  class="w-full border-round-2xl"
/>

^\d{2,3}/\d{2,3}$表示输入内容必须是2-3位数字 + 斜杠 + 2-3位数字,完全匹配你期望的99/999、99/99、999/999三种格式。

内容的提问来源于stack exchange,提问作者Gines Frank Ellis

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 06:42:42