一次只读一个字符串一个字符(用于换行)
问题描述:
我知道这个问题是一个基本问题。我能够把用户输入的字符串,并使用一个整数:一次只读一个字符串一个字符(用于换行)
str = gets()
num = gets().to_i
但我想从字符串读取(说这是在我的案件超过长的线)逐个字符和计数字符串中遇到的每个字符从第一个字符到最后一个字符的数量。我知道这可以通过以下方式实现:
str.length
我想指望它性格聪明,因为我想实现字在Ruby中包裹,其中线宽度内说(这将是一个用户定义的数字输入)我想只打印那些不会继续到下一行的单词,即我不想将连续单词分成两行。应该把这些词带到新的界限。
感谢您的时间..!
答
您可能要检查出Text::Format宝石。另外,Rails将word_wrap作为ActionView的一部分,而Padrino也有类似的word_wrap方法。
否则这是从linewrap样本:http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/249306
str = "\
I don't necessarily need code examples -- but if anyone has
ideas for a best approach to specifying a line wrap width
(breaking between words for lines no longer than a specific
column width) for output from a Ruby script, I'd love to
hear about it."
X = 40
puts str.gsub(/\n/," ").scan(/\S.{0,#{X-2}}\S(?=\s|$)|\S+/)
--- output ---
I don't necessarily need code examples
-- but if anyone has ideas for a best
approach to specifying a line wrap width
(breaking between words for lines no
longer than a specific column width) for
output from a Ruby script, I'd love to
hear about it.
这回答了最初提出的问题的标题,但没有什么实际要求。 – Phrogz 2010-12-23 01:33:44
确实如此。 – bowsersenior 2010-12-23 02:30:05