LoginSignup
5
8

More than 5 years have passed since last update.

クレジットカード情報のバリデーション

Posted at
VALID_CARD_NUMBER_REGEX = /^\d{14,16}$/                                                                                                                                                                
VALID_NAME_REGEX = /^[A-Z]+ [A-Z]+$/                                                                                                                                                                   
VALID_YAER_REGEX = /^\d{2}$/                                                                                                                                                                           
VALID_MONTH_REGEX = /^\d{2}$/                                                                                                                                                                          
VALID_CVV_REGEX = /^\d{3,4}$/ 

Payment Gatewayで有効性確認を取る手前のバリデーションなので雑に。

Railsに怒られる問題

Railsにおいて ^$ をバリデーションに使うと怒られるので \A \z を使用するようにする。
詳しくは Railsの正規表現でよく使われる \A \z って何?? - Qiita

VALID_CARD_NUMBER_REGEX = /\A\d{14,16}\z/                                                                                                                                                                   
VALID_NAME_REGEX = /\A[A-Z]+ [A-Z]+\z/                                                                                                                                                                      
VALID_YAER_REGEX = /\A\d{2}\z/                                                                                                                                                                              
VALID_MONTH_REGEX = /\A\d{2}\z/                                                                                                                                                                             
VALID_CVV_REGEX = /\A\d{3,4}\z/ 

参考

5
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
8