私のIDは8808135011086
です。内訳は次のとおりです。
880813
: yy-mm-dd 形式の生年月日5011
: 性別 (0001
-4999
は女性で、5000
-9999
は男性)0
: 外国かどうか86
: 残りが正当であることを確認するバリデーター番号
13 桁の数字を , , のようにグループに分ける880813
と5011
、0
簡単86
に取得できます。
/\d{6}\d{4}\d{1}\d{2}/
\d{4}
正規表現で数字を探し、それが0001
-9999
または5000
-の間であるかどうかを確認するにはどうすればよい9999
ですか? これまでのところ、次のようなコードがあります。
private
def gender_validation(gender)
case gender
when :male
Employee.id_number.match(/\d{6}\d{4}\d{1}\d{2}/)
return true
when :famale
Employee.id_number.match(/\d{6}\d{4}\d{1}\d{2}/)
return true
else
return false
end
マークされた性別が男性の場合、2 番目の部分 が検出され、それがと5223
の間にある場合は true が返されます。5000
9999
私は答えを探しているだけではありません。これを行う方法も知りたいです。