Angular 7模式使用regx验证日期格式DD / MM / YYYY

时间:2019-05-23 06:56:30

标签: javascript regex angular typescript angular7

尝试使用模式中的regx来验证Angular“ DD / MM / YYYY”中的日期格式

我使用的模式

    public static readonly TAG_DATE_FORMAT_VALUE_REGX : string = '/^(0?[1-9]|[12][0-9]|3[01])[\/\-](0?[1-9]|1[012])[\/\-]\d{4}$/';
 public static readonly TAG_DATE_FORMAT_VALUE_REGX : string = '^(0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.](19|20)\d\d$';

 public static readonly TAG_DATE_FORMAT_VALUE_REGX : string = '  ^(((0[1-9]|[12]\d|3[01])\/(0[13578]|1[02])\/((19|[2-9]\d)\d{2}))|((0[1-9]|[12]\d|30)\/(0[13456789]|1[012])\/((19|[2-9]\d)\d{2}))|((0[1-9]|1\d|2[0-8])\/02\/((19|[2-9]\d)\d{2}))|(29\/02\/((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))))$';

 public static readonly TAG_DATE_FORMAT_VALUE_REGX : string = '^[0-3]?[0-9]/[0-3]?[0-9]/(?:[0-9]{2})?[0-9]{2}$';

还有许多其他。他们都没有为我工作。

TS代码

eventStartDateTime: [null, Validators.compose([Validators.required, Validators.pattern(ConstantValues.TAG_DATE_FORMAT_VALUE_REGX)])],

HTML代码

<div *ngIf="(f.eventStartDateTime.invalid && eventform.submitted) || (f.eventStartDateTime.invalid && (f.eventStartDateTime.dirty || f.eventStartDateTime.touched))"
                    class="invalid-feedback">
                    <div *ngIf="f.eventStartDateTime.errors.required"> Please provide a starting date/time for this
                       professional learning event. </div>
                    <div *ngIf="f.eventStartDateTime.errors.pattern">Invalid Date Format. Valid format - DD/MM/YYYY
                    </div>
                  </div>

参考

Javascript date regex DD/MM/YYYY

Regex to validate date format dd/mm/yyyy

https://www.regextester.com/99555

0 个答案:

没有答案