У меня есть большой файл ruby, содержащий данные о продукте. Я пытаюсь разбить файл на разделы на основе регулярного выражения. У меня есть заголовки продуктов, обозначаемые словом Product
, за которым следует пробел, а затем номер. После этого у меня есть ряд строк, содержащих информацию о продукте.Разбиение рубинового файла по шаблону?
Формат выглядит следующим образом.
Продукт 1:
...data
Продукт 2:
... данные
...
Продукт N:
... данные
При чтении из файла я хотел бы игнорировать заголовки продуктов и вместо этого показывать только данные продукта. Для этого я пытаюсь разбить файл на основе регулярного выражения.
file = File.read('products.txt')
products = file.split(/\Aproduct \d+:\z/i)
Данное регулярное выражение работает и находит все заголовки продуктов. Проблема в том, что файл не разбивается на соответствующие разделы.
Когда я запустил puts products[0],
, весь файл распечатывается на консоль.
Вы можете экспериментировать с 'перечислимых # slice_before'. –