gsub
メソッドを使用してメールのすべての英数字を '#'文字に置き換えようとしていますが、Rubyは '@'文字の前にバックスラッシュを挿入しています。不適切なgsub置換
例えば:
"[email protected]".gsub(/[a-z0-9]/, "#")
リターン"###\#@###.###"
の代わり"####@###.###"
。あなたはIRB/PRYで見る何
puts "[email protected]".gsub(/[a-z0-9]/, "#")
は、文字列の補間として解釈されている#@
の防止は、次のとおりです。
また、使用することができます '\ w'メタ文字:' "[email protected]" .gsub(/ \ /ワット、 "#") ' – orde
を@ orde '\ w'と' [a-z0-9] 'は異なる文字集合です。 – mudasobwa
バックスラッシュは '@'の前、 '#'の前に '@'の前に挿入されていません。 – Stefan