4.12. Weryfikacja numerów ubezpieczenia społecznego (SSN) stosowanych w Stanach Zjednoczonych

Problem

Chcemy sprawdzić, czy użytkownik wpisał prawidłowy numer ubezpieczenia społecznego (ang. Social Security NumberSSN).

Rozwiązanie

Gdybyśmy chcieli się ograniczyć do sprawdzenia, czy dany łańcuch jest zgodny z podstawowymi regułami formatowania numerów ubezpieczenia społecznego, najprostszym rozwiązaniem byłoby użycie poniższego wyrażenia regularnego. Gdybyśmy jednak chcieli opracować bardziej restrykcyjny mechanizm, który korzystałby na przykład z bazy danych określającej, czy weryfikowany numer należy do żyjącej osoby, powinniśmy postępować według rad zawartych w punkcie „Patrz także” na końcu tej receptury.

Wyrażenie regularne

  • ^(?!000|666)(?:[0-6][0-9]{2}|7(?:[0-6][0-9]|7[0-2]))-(?!00)[0-9]{2}-(?!0000)[0-9]{4}$ ...

Get Wyrażenia regularne. Receptury now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.