2011-05-10 6 views
0

변수 x가있는 경우 언젠가 정상적인 인쇄 가능한 문자열이되며 때로는 임의의 16 진수 데이터 (인쇄 할 수없는 문자 포함)가 될 수 있습니다. 패딩 공간을 어떻게 안정적으로 인쇄 할 수 있습니까? ? 예 :루비 : 인쇄 할 수없는 데이터 문자열

def print(x) 
    puts("%-15s" % x) 
end 

x = "test" 
print(x) 
x = Array.new(256) { rand(256) }.pack('c*') 
print(x) 
+0

'언젠가 ...','인쇄 할 공간 padding' 될 것이다? 오식? – sawa

답변

1
def print(x) 
    puts "%-15s" % [x.inspect] 
end 

그리고 당신이 원하는 경우는 "..." 없애 :

puts "%-15s" % [x.inspect[1..-2]] 
+0

아마도 이것을 알고있을지라도 하나의 항목 만 전달되는 경우'String # %'은 인수를 배열로 요구하지 않습니다. 즉,'puts "% -15s"% x.inspect' – Phrogz

관련 문제