2014-04-15 41 views
0

我想提出尖銳的,而不是密碼Ruby代碼如何隱藏紅寶石輸出密碼?

puts "  found password: #{pass.tr('?','#')}" 

我需要儘可能多的尖銳,「#」字符輸出的密碼字符。

如何做到這一點的權利?

回答

1

方法.tr是爲了交換特定的字符,你不能做通配符匹配。即使將其擴展爲涵蓋許多字符,也可能會遺漏或忘記系統中密碼允許使用的特殊字符。

你有什麼簡單的變體是使用.gsub代替:

pass.gsub(/./,'#') 

它使用正則表達式查找字符組交換。簡單的正則表達式/./匹配任意單個字符。 Ruby core documentation on regular expressions包括一個簡短的介紹,如果你以前沒有用過很多。