首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在接受00000-0000或0000的角度材料输入上添加美国邮政编码掩码

如何在接受00000-0000或0000的角度材料输入上添加美国邮政编码掩码
EN

Stack Overflow用户
提问于 2020-01-30 00:47:58
回答 3查看 2.2K关注 0票数 1

我正在寻找一个正则表达式或掩码,允许我使用两种格式(00000-0000或00000)验证角度材质输入。我的代码只允许我输入像这样的邮政编码12345-6789,而不是这个12345。我在用ngx-mask。并使用Angular 7。

代码语言:javascript
复制
 <mat-form-field>
    <input matInput name="zipCode" placeholder="Zip Code" [(ngModel)]="site.zipcode" mask= '00000-0000'>                                               
 </mat-form-field>
EN

回答 3

Stack Overflow用户

发布于 2020-10-13 18:01:52

代码语言:javascript
复制
Validators.pattern('^[0-9]{2,5}(:|\\-)?[0-9]{3,4}')

在html中

代码语言:javascript
复制
pattern="^[0-9]{2,5}(:|\-)?[0-9]{3,4}"
票数 1
EN

Stack Overflow用户

发布于 2020-01-30 00:57:49

尝尝这个

更新了答案

首先,我们需要从https://www.npmjs.com/package/angular2-text-mask2安装软件包

使用npm i angular2-text-mask --save

然后将其导入根模块文件中,例如App.module.ts

像这样

代码语言:javascript
复制
import { TextMaskModule } from 'angular2-text-mask';

将其导入@NgModule({})装饰器的imports[TextMaskModule]数组中

并在component.ts文件中

代码语言:javascript
复制
myModel: any;
abcd = [/\d/, /\d/, /\d/, /\d/, /\d/, "-", /\d/, /\d/, /\d/, /\d/];

在模板文件中

代码语言:javascript
复制
<mat-form-field class="example-full-width">
    <input matInput [textMask]="{mask: abcd}" [(ngModel)]="myModel" placeholder="Type a value">
  </mat-form-field>

我希望这能行得通

票数 0
EN

Stack Overflow用户

发布于 2020-02-13 13:17:30

使用此正则表达式:

代码语言:javascript
复制
    zipcode = '^[0-9]{5}(?:-[0-9]{4})?$',

TS文件

代码语言:javascript
复制
Validators.pattern(RegexEnum.zipcode)

它将帮助您验证美国邮政编码

我希望它能起作用。

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

https://stackoverflow.com/questions/59971889

复制
相关文章

相似问题

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