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

Adding spaces between strings in Ruby

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

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

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

这将自动为您关闭它。

您可以使用 strip 删除所有白色 space。

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(" ")