rubyish 发表于 2013-12-25 00:14

[练习] 求字符串任意位置处的单词

问题:

有一个字符串:
a quick brown fox jumps over a lazy dog

求字符串任意位置处的单词

example:

位置 0 : a
位置 1 : space
位置 2 : quick
位置 3 : quick
....
位置 9 : brown
...

bikong0411 发表于 2013-12-25 10:41

str="a quick brown fox jumps over a lazy dog"
len=str.length
tmp = 0
len.times {|x|
   idx = str.index(" ",x) || len
   if idx == x
      res = "space"
      tmp = idx
   else
      res = str
   end
   print "位置%d: %s\n" %
}

rubyish 发表于 2013-12-26 00:37

回复 2# bikong0411
崇拜!{:3_188:}

   

bikong0411 发表于 2013-12-26 09:27

回复 3# rubyish


    哈哈

ddd010 发表于 2014-01-16 22:36

str_array=[]
str="a quick brown fox jumps over a lazy dog"
space_array=str.split(/\s/)
index = 0
str.each_char do |x|
if x==" "
    index+=1
    str_array<< "space"
else
    str_array<< space_array
end
end
puts str_array我来个笨方法

rubyish 发表于 2014-01-17 06:55

来个~:D)str = "a quick   brown fox"
pos = str.each_char.chunk {|c| c != ?\s}
   .flat_map {|_, e| * e.size }

p pos.at 5
p pos.at 7

ddd010 发表于 2014-01-17 08:52

rubyish 发表于 2014-01-17 06:55 static/image/common/back.gif
来个~

我发现你后面的帖子map用的很多,大都是我没有见到过的用法。

变高手了。。

佩服。

我才刚刚学。
页: [1]
查看完整版本: [练习] 求字符串任意位置处的单词