gpt4 book ai didi

javascript - AngularJs ng-模式正则表达式

转载 作者:行者123 更新时间:2023-11-30 11:38:58 24 4
gpt4 key购买 nike

我正在努力为 Angular ng-pattern 编写正则表达式以验证表单输入字段。可能的输入示例如下

有效输入:

@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链接:https://regex101.com/r/HMVdLD/1

非常感谢任何帮助!

最佳答案

我建议定义一个模式来匹配有效输入,比如

ng-pattern="/^@[a-zA-Z0-9]+(?:,\s*@[a-zA-Z0-9]+)*$/"

参见 regex demo

如果您想禁止前导和尾随空格,请添加 ng-trim="false"

图案细节:

  • ^ - 字符串的开始
  • @ - 文字 @ 符号
  • [a-zA-Z0-9]+ - 1+ 字母数字
  • (?:,\s*@[a-zA-Z0-9]+)* - 0+ 序列:
    • , - 逗号
    • \s* - 0+ 个空格
    • @[a-zA-Z0-9]+ - 同上
  • $ - 字符串结尾。

关于javascript - AngularJs ng-模式正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43392494/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com