How can I remove non-printable invisible characters from string?
Ruby version: 2.4.1
2.4.1 :209 > product.name.gsub(/[^[:print:]]/,'.')
=> "Kanha"
2.4.1 :210 > product.name.gsub(/[^[:print:]]/,'.').length
=> 6
2.4.1 :212 > product.name.gsub(/[\u0080-\u00ff]/, '').length
=> 6
2.4.1 :214 > product.name.chars.reject { |char| char.ascii_only? and (char.ord < 32 or char.ord == 127) }.join.length
=> 6
2.4.1 :216 > product.name.gsub(/[^[:print:]]/i, '').length
=> 6
The word "Kanha" has 5 letters. However there is a 6th character that is not printable. How can I remove it?
By googling and SOing I have already tried few approaches, but as you can see none of those are helpful.
It is causing problems when I try to integrate out data with other systems.