在Ruby中的字符串之间添加空格

时间:2015-01-08 21:29:53

标签: ruby

file = File.new("pastie.rb", "r")
    while (line = file.gets)
       labwords = print line.split.first 
    end
file.close

如何在字符串之间添加空格?现在输出是一个巨大的字符串。我想我需要以某种方式使用.join或.inject,但我的Ruby语法技能现在很差,我还是初学者。我还需要跳过文件段落中的缩进空格。但我不知道该怎么做。

2 个答案:

答案 0 :(得分:4)

将某些内容设置为print的结果有点混乱。你可能不是故意这样做的。相反,尝试:

labwords = line.split

print labwords.join(' ')

如果你想跳过某些行,这就是模式:

while (line = file.gets)
  # Skip this line if the first character is a space
  next if (line[0,1] == " ")

  # ... Rest of code
end

您还可以像这样清除File.new来电:

File.open('pastie.rb', 'r') do |file|
  # ... Use file normally
end

这将自动关闭它。

答案 1 :(得分:0)

您可以使用strip删除所有空格。

file = File.new("pastie.rb", "r")
lines = []
file.each_line do |line|
   lines << line.strip.split
end
file.close
puts lines.map { |line| line.join(" ") }.join(" ")