我有一个包含产品数据的大型ruby文件。我试图根据正则表达式将文件分割成几部分。我有产品标题由单词Product
表示,后跟一个空格,然后是一个数字。之后,我有一堆包含产品信息的行。在模式中分割红宝石文件?
格式如下所示。
产品1:
...data
产品2:
...数据
...
产品N:
...数据
从文件中读取时,我想忽略产品标题,而只显示产品数据。为此,我试图根据正则表达式来分割文件。
file = File.read('products.txt')
products = file.split(/\Aproduct \d+:\z/i)
这个正则表达式的工作原理和发现所有产品的标题。问题是,该文件没有被拆分成适当的部分。
当我运行puts products[0],
时,整个文件被输出到控制台。
你可能想用'可枚举#slice_before'实验。 –