角2の検証パターンが他の言語の検証パターンと異なる可能性があるので、ここで質問します。日付検証パターンが角2の検証パターンで機能しない
mm/dd/yyyyを取得するためのasp.net検証に使用した日付パターンがあります。これは閏年などを考慮し、m/d/yyyyも受け入れます。それは次のように使用されています。
dateSubmitted: [null, [Validators.required, Validators.pattern('((^(10|12|0?[13578])([/])(3[01]|[12][0-9]|0?[1-9])([/])((1[8-9]\d{2})|([2-9]\d{3}))$)|(^(11|0?[469])([/])(30|[12][0-9]|0?[1-9])([/])((1[8-9]\d{2})|([2-9]\d{3}))$)|(^(0?2)([/])(2[0-8]|1[0-9]|0?[1-9])([/])((1[8-9]\d{2})|([2-9]\d{3}))$)|(^(0?2)([/])(29)([/])([2468][048]00)$)|(^(0?2)([/])(29)([/])([3579][26]00)$)|(^(0?2)([/])(29)([/])([1][89][0][48])$)|(^(0?2)([/])(29)([/])([2-9][0-9][0][48])$)|(^(0?2)([/])(29)([/])([1][89][2468][048])$)|(^(0?2)([/])(29)([/])([2-9][0-9][2468][048])$)|(^(0?2)([/])(29)([/])([1][89][13579][26])$)|(^(0?2)([/])(29)([/])([2-9][0-9][13579][26])$))')]],
は、このパターンは、私のasp.netアプリで完全に働いたが、それは私がしようとすると、入力ボックスに正しい日付形式を入力するか、それを入力するための材料の日付ピッカーを使用するかどうか、それは失敗し、Angular2ではありません。私はこれについて何かを見つけることができませんでした。私は電子メールのようにAngular2で他のパターンをうまく適用してきました。次のようにこの情報が必要な場合は、私のpackage.jsonで
私の角度のバージョンは、以下のとおりです。
"@angular/animations": "^4.3.6",
"@angular/cdk": "^2.0.0-beta.10",
"@angular/common": "^4.1.0",
"@angular/compiler": "^4.1.0",
"@angular/core": "^4.1.0",
"@angular/forms": "^4.1.0",
"@angular/http": "^4.1.0",
"@angular/material": "^2.0.0-beta.10",
"@angular/platform-browser": "^4.1.0",
"@angular/platform-browser-dynamic": "^4.1.0",
"@angular/router": "^4.1.0",
"@ngrx/core": "^1.2.0",
編集:追加plunker:https://plnkr.co/edit/qHPZceVTpS4x1AEqZfjA
パターン内のすべての '' \ ''を二重にします。 –
それはうまくいきませんでした。他のキャラクターも私は脱出しなければなりませんか? – David
[ここから](https://regex101.com/r/RUPheX/1)をコピー/ペーストしてみてください(私はそこで '\ d'を二重にエスケープしました。 –