首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >角9- Validators.pattern('^[0-9][0-9][0-9]$')与0 12这样的前导0数不匹配

角9- Validators.pattern('^[0-9][0-9][0-9]$')与0 12这样的前导0数不匹配
EN

Stack Overflow用户
提问于 2020-04-22 17:51:54
回答 1查看 2.7K关注 0票数 0

为了验证一个简单的PIN (可以包括前导0 ),我编写了以下非常简单的regexp:

代码语言:javascript
运行
复制
^[0-9][0-9][0-9][0-9][0-9][0-9]$

在我尝试过的不同的在线regexp工具上,它的工作原理与预期的一样,但是,它在角验证器中不能工作,因为前面的0不算为数字:

代码语言:javascript
运行
复制
  PIN = new FormControl('', [
    Validators.required,
    Validators.minLength(6),
    Validators.maxLength(6),
    Validators.pattern('^([0-9][0-9][0-9][0-9][0-9][0-9])$'),
  ]);

  formPINGroup = this.formBuilder.group({
    PIN: this.PIN,
  });

尽管我浏览了不同的论坛,但我还是搞不明白,人们总是在寻找相反的东西。

如果一个专家看到这个职位,他的帮助是受欢迎的!

同时,保重!

编辑:

我创建了一个Stackblitz,如果您想尝试的话:https://stackblitz.com/edit/angular-zzsjn1

以下是三项成果:

  • ,第一个不好,因为领先的0,

  • ,第二,因为我加了数字6,在
  • 的末尾,最后一个显然是错的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-22 20:12:07

问题是一个HTML5输入元素。尝试将hello-component.ts中的type="number“改为type="tel”(从您的链接中)。在技术上,您仍然可以输入一些非数字字符,但是只有6位数字(带或不带前导零)的模式才能生效。另见this thread

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61371807

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档