[Moscow.pm] Парсинг текстовой строки

Павел Тимонин gg.error на gmail.com
Чт Ноя 6 05:37:27 PST 2008


0,5(бухты по 50 м), 0,6(катушки по 300 м), 2,4(катушки по 300 м),
2,4(катушки по 300 м), 2,4(катушки по 300 м), 2,4(катушки по 300 м),
2,4(катушки по 300 м), 2,4(катушки по 300 м), 2,4(катушки по 300 м),
2,4(катушки по 300 м), 2,4(катушки по 300 м), 2,4(катушки по 300 м),
2,4(катушки по 300м), 2,4(катушки по 300 м), 2,4(катушки по 300 м),
2,4(катушки по 300 м), 2,4(катушки по 300 м), 2,4(катушки по 300 м),
2,4(катушки по 300 м), 2,4(катушки по 300 м), 2,4(катушки по 300 м),
2,4(катушки по 300 м), 2,4(катушки по 300 м), 2,5(катушки по 500 м),
3(катушки по 500 м), 3(катушки по 500 м), 3(катушки по 500 м), 3(катушки по
500 м), 3(катушки по 500 м), 3(катушки по 500 м), 3(катушки по 500 м),
3(катушки по 500 м), 3(катушки по 500 м), 3(катушки по 500 м), 3(катушки по
500 м), 3(катушки по 500 м), 3(катушки по 500 м), 3(катушки по 500 м),
3(катушки по 300 м), 3,6(бухты по 100 м), 3,6(катушки по 300 м), 4,3(бухты
по 100 м), 4,4(бухты по 50 м), 4,4(бухты по 50 м)

вот такая дикая строка. формат - длина в километров и за ней в скобках
расшифровка.

надо из этой строки получить набор строк или массив.. или не представляю
даже, что точно и как это назвать. надо её разобрать таким образом:

0.5(бухты по 50м) =>

0.05 бухта

0.05 бухта

0.05 бухта

0.05 бухта

, и т. д. - то есть из одной этой строки получить кучу строк, в каждой из
которых будет только одна бухта или катушка.

вообще это используется таким образом: есть некая программа, она на вход
получает большую строку "S" с полным описанием товароной позиции и имеет
задачу внести эту позицию в складские остатки. в этой строке "S" указана
марка, единица измерения, и вот в таком формате остатки на складе. но каждая
катушка или бухта - это отдельная позиция остатков, поэтому надо разобрать
таким вот образом.

работа единичная, то есть эти скрипты будут запускаться примерно раз в
неделю. так что быстродействие и оптимизированность в общем-то не требуется,
гораздо важнее наглядность кода, чтоб я мог в нём разобраться :)

можете подсказать что-нибудь?
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20081106/76a249ad/attachment.html>


Подробная информация о списке рассылки Moscow-pm