class DataAnon::Strategy::Field::FormattedStringNumber

Keeping the format same it changes each digit in the string with random digit.

!!!ruby
anonymize('CreditCardNumber').using FieldStrategy::FormattedStringNumber.new

Public Instance Methods

anonymize(field) click to toggle source
# File lib/strategy/field/string/formatted_string_numbers.rb, line 12
def anonymize field
  @original_string = field.value
  @anonymized_string = ""
  @original_string.each_char do |char|
    if /\d/.match(char).nil?
      @anonymized_string += char
    else
      @anonymized_string += DataAnon::Utils::RandomInt.generate(0,9).to_s
    end
  end

  @anonymized_string
end