-2

マスク付きの画面に表示される適切な SSN 番号を検証する正規表現が必要です。

ただし、SSN の下 4 桁のみを表示し、その他の文字は*記号でマスクしています

ユーザーは、の場所に数字のみを入力するか、その*ままにしておくことができます。

ユーザーは有効な入力を入力できるか、変更されません

***-**-1234 123-55-1234

ユーザーが表示を無効な SSN に変更しました

5**-**-1234 A**-**-1234 AAA-5*-1234

これにはJavaScript 正規表現コード/記事が必要です。

4

1 に答える 1

6

次の正規表現を使用できます。

(\d{3}-\d{2}|\*{3}-\*{2})-\d{4}

許可するには:

***-**-1234
123-55-1234

何もありません。

説明:

  • \d数字を意味します(つまり、0から9までの任意の数字(Unicode数字も));
  • \d{3}-\d{2}、3 桁の後に char-が続き、その後に 2 桁が続くことを意味します。
  • \*{3}-\*{2}は、 3 文字の後に 1 文字、 2 文字が*続く-*ことを意味します。
  • |は代替演算子です。それは大まかに「または」を意味し、同様に一致または(a|b)を意味します。ab
  • つまり、 (3 桁、その後に char 、その後に 2 桁) OR (3 chars 、その後に char 、その後に 2 chars )(\d{3}-\d{2}|\*{3}-\*{2})を意味します。-*-*
  • 最後に、コード全体は、前の項目で説明したのと同じ(...)-\d{4}意味で、その後に charと 4 桁が続きます-

要約すると、次の(\d{3}-\d{2}|\*{3}-\*{2})-\d{4}ことを意味します。

  • ((3 桁、その後に char、-その後に 2 桁が続く) OR (3 chars *、その後に char、-その後に 2 chars *))、すべての後に char、-その後に 4 桁が続く
于 2013-06-26T12:20:36.250 に答える