AngularJs 模式正则表达式
AngularJs ng-pattern regex
我正在努力为 angular ng-pattern 编写正则表达式来验证表单输入 field.An 下面是可能的输入示例
有效输入:
@tag1,@tag2,@tag3
@tag1, @tag2, @tag3
@tag1
无效输入:
@tag 1
@tag 1, @tag2, @tag -3
@ta g1, @t ag2
基本上它应该允许逗号和逗号空格,但不允许标签之间有空格。
我已经编写了一个匹配所有无效输入的正则表达式,但是当我在 ng-pattern 中使用它时,它没有进行正确的验证。
内置正则表达式:/((^, @|@\s+)|@*[a-zA-Z0-9]* +[a-zA-Z0-9])/g
Link: https://regex101.com/r/HMVdLD/1
非常感谢任何帮助!
我建议定义一个模式来匹配有效输入,比如
ng-pattern="/^@[a-zA-Z0-9]+(?:,\s*@[a-zA-Z0-9]+)*$/"
如果您想禁止前导和尾随空格,请添加 ng-trim="false"
。
图案详情:
^
- 字符串开头
@
- 文字 @
符号
[a-zA-Z0-9]+
- 1+ 个字母数字
(?:,\s*@[a-zA-Z0-9]+)*
- 0+ 个序列:
,
- 逗号
\s*
- 0+ 个空格
@[a-zA-Z0-9]+
- 同上
$
- 字符串结尾。
我正在努力为 angular ng-pattern 编写正则表达式来验证表单输入 field.An 下面是可能的输入示例
有效输入:
@tag1,@tag2,@tag3
@tag1, @tag2, @tag3
@tag1
无效输入:
@tag 1
@tag 1, @tag2, @tag -3
@ta g1, @t ag2
基本上它应该允许逗号和逗号空格,但不允许标签之间有空格。
我已经编写了一个匹配所有无效输入的正则表达式,但是当我在 ng-pattern 中使用它时,它没有进行正确的验证。
内置正则表达式:/((^, @|@\s+)|@*[a-zA-Z0-9]* +[a-zA-Z0-9])/g
Link: https://regex101.com/r/HMVdLD/1
非常感谢任何帮助!
我建议定义一个模式来匹配有效输入,比如
ng-pattern="/^@[a-zA-Z0-9]+(?:,\s*@[a-zA-Z0-9]+)*$/"
如果您想禁止前导和尾随空格,请添加 ng-trim="false"
。
图案详情:
^
- 字符串开头@
- 文字@
符号[a-zA-Z0-9]+
- 1+ 个字母数字(?:,\s*@[a-zA-Z0-9]+)*
- 0+ 个序列:,
- 逗号\s*
- 0+ 个空格@[a-zA-Z0-9]+
- 同上
$
- 字符串结尾。