2017-12-18 20 views
0

は私がでENV変数にパターンを保存environment.prod.ts例:environment.prod.tsにENV変数としてパターンを保存する方法は?

export const environment = { production: true, regExpTs : /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[#[email protected]!%&*?])[A-Za-z\d#[email protected]!%&*?]{8,30}$/i, regExpHTML : '^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[#[email protected]!%&*?])[A-Za-z\d#[email protected]!%&*?]{8,30}$', };

ENVから動的に必要とし、また非表示にするときに、この考え方の背景には、パターンを変更することができることですそれはHTMLに直接埋め込まれていません。

最初の変数:regExpTs*.tsファイルで使用されており、それが正常に働いています。私が直面する問題は変数に関するものです:regExpHTML

私は*.tsファイル内varaibleを読み取る: let PASS_REGEXP_HTML = environment.regExpHTML;と、私は、特定の入力フィールド内*.component.html補間として渡します。

など。 <input type="password" patter="{{PASS_REGEXP_HTML}}" ../> 補間もうまくいきますが、パターンは何らかの形で変更されており、ENVに保存されているパターンではないという問題があります。

それはからの変更:/ソリューションがどうなるか

^(?=.*[a-z])(?=.*[A-Z])(?=.*d)(?=.*[#[email protected]!%&*?])[A-Za-zd#[email protected]!%&*?]{8,30}$

まず、それが変更されていた理由は何だと第二と:

^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[#[email protected]!%&*?])[A-Za-z\d#[email protected]!%&*?]{8,30}$

へまたはそのような問題の修正?

答えて

1

バックスラッシュのためです。 regExpHTMLを次のように変更してください

^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[#[email protected]!%&*?])[A-Za-z\\d#[email protected]!%&*?]{8,30}$

+0

^(?=。* [az])(?=。* \/d)(?=。* [#$ @!%&*? ])[A-Za-z \/d#$ @!%&*?] {8,30} $ 'それは動作しませんでした。私の悪い。 –

+0

私はそれがうれしいです。あなたは答えとしてそれを受け入れることができますか? –

関連する問題