正则表达式不能用于可编辑的angular指令

Regular expression is not working on xeditable angular directive

本文关键字:angular 指令 编辑 不能 用于 正则表达式      更新时间:2023-09-26

我使用的是可编辑的angular指令。我需要在我的一个字段中使用正则表达式来验证positive decimal values。然而,它不能正常工作。你能告诉我为什么吗?提前谢谢。

示例值包括12,125.25

<span editable-text="user.name" e-form="tableform" e-pattern="/^'d+('.'d{1,2})?$/">
                {{ user.name || 'empty' }}
 </span>

JSFiddle

您需要修复正则表达式,因为它现在不接受千位分隔符。

使用这个正则表达式:

^'d{1,3}(?:,'d{3})*('.'d{1,2})?$

看到演示

我添加了:

  • 'd{1,3} -匹配1到3位数字
  • (?:,'d{3})* -匹配0个或多个, + 3位数字序列。

如果非捕获组不适合您,请删除?:

如果您不希望仅允许0输入(即数字仅由0组成),请使用

^(?![0,.]+$)'d{1,3}(?:,'d{3})*('.'d{1,2})?$

看到演示