首页 » Ruby » ruby03

ruby03

原文 http://blog.csdn.net/hmyixiu/article/details/76599591

2017-08-03 00:20:08阅读(630)

从命令行输入的数据

ruby print.rb 1 2 3 #后边跟着三个参数
可以在ruby代码中进行使用,通过ARGV数组
print ARGV[0],ARGV[1],ARGV[2]
通过命令行取得的数据是字符串,如果用来计算的话需要将其转换成数值,必须使用to_i方法

读取文件

filename = “./1.txt”
file = open(filename)#会打开名为filenaem的文件 ,并返回读取文件的对象
text = file.read#从文件读入数据,并存入text
print text
file.close
上边的这种方式输入直接把文件所有的行都读取出来,如果遇到特别大的文件的时候,瞬间把所有数据都读出来的话,需要花费很长的时间,所以以下这种方式对问题进行了解决,采用了逐行读取的方式
file = open(filename)
while text = file.gets do
print text
end
file.close
gets方法每次都会从文件中读取一行出来,知道读到文章的末尾,会返回nil,所以如果还有数据可以读入就为真

只显示文件里符合特定样式的几行

利用正则表达式
pattern = Regexp.new(“ruby”)#建立正则表达式对象
filename = 文件名
file = open(filename)
while text = file.gets do
if pattern =~ text #依次检测每一行是否符合
print text
end
end
file.close

最新发布

CentOS专题

关于本站

5ibc.net旗下博客站精品博文小部分原创、大部分从互联网收集整理。尊重作者版权、传播精品博文,让更多编程爱好者知晓!

小提示

按 Ctrl+D 键,
把本文加入收藏夹