parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

Misha v.3 07.02.2011 01:13

для начала, метод @table_to_plaintext можно немного упростить:
@table_to_plaintext[lines_table]
$result[^lines_table.menu{$lines_table.piece}[^#0A]]
по поводу пустых строк: увы, при создании таблицы из текста, парсер выкидывает пустые строки и в результирующей таблицы не оказывается строк, не содержащих ничего.

т.е. в вашем случае надо вводить какой-нить спец-код (<br />?), который вставлять на место пустых строк с момощью регулярного выражения, а при выводе -- заменять на то, что вам требуется (или не заменять, а выводить как есть, как например в случае с <br />)
1. стоит ли беспокоиться, что в тексте могут оказаться табуляции? Не будет ли это конфликтовать с внутренним представлением таблиц?
если это пользовательские ("грязные") данные и вы не применяете к ним taint, то встречающиеся внутри символы табуляции и перевода строки не создадут проблем (но вы не показали как вы создаёте таблицу на основании ваших данных, поэтому утверждать что-то наверняка -- нельзя)
2. Таблицы и хеши — единственные способы хранения наборов данных? ... Хочется хотя бы простых массивов :)
ну... все классы хранят какие-либо данные. но похоже, что для ваших целей подходят именно эти.
ну или массивы, которые очень несложно реализовать самостоятельно на базе хэша :)