如何使用Ruby中的“split”方法

Python042

如何使用Ruby中的“split”方法,第1张

这个是将一串字符串转化成数组的方法

(1) 在默认无参传入的时候 ,是以空格为间隔 ,获得数组

 pry(main)> " now's the time".split

 => ["now's", "the", "time"]

(2) 如果接受一个字符参数 ,那么会按照这个字符参数进行分割变成数组

pry(main)> "mellow yellow".split("ello")

 => ["m", "w y", "w"]

(3)如果接受的是两个参数 ,后面的参数是用来确定分割数组里面元素的个数,如果在按规则分割的时候 剩下多余的就变成一个元素

pry(main)> "mellow,yellow".split(//,4)

 => ["m", "e", "l", "low,yellow"]

(4)当然split 参数 也接受正则表达式,如下

pry(main)> "hi mom".split(%r{\s*})

 => ["h", "i", "m", "o", "m"]

简单说一下吧,假设你有一个名为example.txt的文件,里面的内容如下:

bbb ccc 123

ddd aaa 456

abc efg 789

695 aaa uwi

注意,这里我举的例子每一列是用空格分隔的。

用ruby读取的代码如下:

f = File.open("example.txt")

f.each_line { |line| p line.split.first if line =~ /\saaa\s/ }

运行结果 #=>"ddd"

"695"

OK,大功告成。