인쇄 할 수없는 문자가있는 문자열이 있습니다.Ruby에서 인쇄 할 수없는 문자를 숫자로 변환합니다.
내가 현재 사용 물결표를 대체하고있는 중이 야 :
string.gsub!(/^[:print:]]/, "~")
그러나, 나는 실제로 정수 값으로 변환하고 싶습니다.
나는이 시도하지만 항상0
string.gsub!(/[^[:print:]]/, "#{$1.to_i}")
생각을 출력?
인쇄 할 수없는 문자가있는 문자열이 있습니다.Ruby에서 인쇄 할 수없는 문자를 숫자로 변환합니다.
내가 현재 사용 물결표를 대체하고있는 중이 야 :
string.gsub!(/^[:print:]]/, "~")
그러나, 나는 실제로 정수 값으로 변환하고 싶습니다.
나는이 시도하지만 항상0
string.gsub!(/[^[:print:]]/, "#{$1.to_i}")
생각을 출력?
String#gsub, String#gsub! 선택적 블록을 허용합니다. 블록의 반환 값은 대체에 사용됩니다. 그냥 로그 인쇄 할 수없는 문자 또는 디버그 목적으로 출력 문자열에 필요한 경우
"\x01Hello\x02".gsub(/[^[:print:]]/) { |x| x.ord }
# => "1Hello2"
Object#inspect는 옵션입니다.
puts "\x01Hello\x02".inspect
# => "\u0001Hello\u0002"
11 분 후에 나는이 대답을 받아 들일 것입니다. – screenmutt