使用Ruby中的正则表达式将字符串拆分为数组

时间:2016-10-28 20:50:37

标签: ruby

我正在尝试在Ruby中编写一个函数,它可以接收一个字符串,然后根据某些条件将其拆分。这将用于模拟语法并创建任意单词序列。字符串以以下格式存在:

我将如何实现这一目标?关于如何设置正则表达式以及如何将字符串中的项目提取到数组中,我有点迷失。

1 个答案:

答案 0 :(得分:1)

str = "\n<start>\nYou <adj> <name> . ;\nMay <curse> . ;\n"

str.lines # Break on newlines
   .map{| l | l.gsub "\n", ''  } # remove trailing newlines
   .map{| l | l.gsub /\s*;$/, '' } # remove trailing spaces and ;
   .reject{| l | l.empty? }        # remove empty elements

=> ["<start>", "You <adj> <name> .", "May <curse> ."]