ruby仿awk处理列
更新:HHH   时间:2023-1-7


取出文本中的第二列


直接上代码

#!/usr/bin/env ruby
#encoding: utf-8

filename = ARGV[0]
file = File.open(filename)

=begin
逐列打印
=end

file.each_line do |line|
  myline = line.chomp!
  ary = myline.readlines
  puts ary[1]
end
file.close


用each_line逐行遍历,然后用readlines将行内容变为数组,然后取出数组中的元素。


注:chomp!用于删除换行符


split方法用法更广泛一点,可以替代readlines方法。

split方法将正则表达式作为分隔符,默认为空格,也可以省略

#!/usr/bin/env ruby
#encoding: utf-8

filename = ARGV[0]
file = File.open(filename)

=begin
逐列打印
=end

file.each_line do |line|
  myline = line.chomp!
  ary = myline.split(/\s+/)
  puts ary[1]
end
file.close


(/\s+/)是正则表达式,标识一个或多个空格


返回编程语言教程...