Ruby.new - Reading and 'Riting

Reading and 'Riting

Ruby有一个复杂的I/O库。我们只介绍一些简单的。
puts打印它的每个参数,并在每个后加上换行。
print打印它的每个参数,但没有换行。
它们都可以写入任何I/O对象,缺省写到控制台。
其他常用的是printf,用法和C的是一样的:
printf "Number: %5.2f, String: %s", 1.23, "hello"

结果:
Number:  1.23, String: hello
有很多方法获得程序的输入。最传统的做法是使用gets方法,它获得程序标准输入流的一行。
line = gets
print line

gets方法有个特别的效果:当返回一个新的输入行的同时,它也将结果存入一个全局变量$_。此变量非常特殊,它是很多方法的缺省参数。如果我们调用print方法时不提供参数,那么print会打印$_。如果我们在if或while语句是使用正则表达式作为参数,那么表达式会与$_进行匹配操作。看下面的例子:
while gets           # assigns line to $_
  if /Ruby/          # matches against $_
    print            # prints $_
  end
end

看看“Ruby Way”方式重写上面的代码:
ARGF.each { |line|  print line  if line =~ /Ruby/ }

这里使用了一个预定义的对象ARGF,此对象代表了程序能获得的输入流(input stream)。






你可能感兴趣的:(C++,c,正则表达式,C#,Ruby)