Re: Поможет все тот же [sed..]



Posted by Олег Грибов (213.170.64.42) on December 20, 2001 at 02:21:09:

: А ведь совсем необязательно идентифицировать строки "по первому слову".
: Превратим всю строку позиции меню в одно длинное первое слово: вместо
: пробелов будем использовать, например, знак подчеркивания.

: *Показ меню произвольного размера и выбор из него
: u=[user]
: [sed u + 'menu', 3]
: [sed u + 'menuhead', 'make choice']
: s='p_p1_p2_p3'; [sed u + 'menu1', s]; [sed u + s, 1]
: s='p_p2_p3_p4'; [sed u + 'menu2', s]; [sed u + s, 2]
: s='p_p3_p2_p1'; [sed u + 'menu3', s]; [sed u + s, 3]
: printstr [intsn [ged u + [ia menu]]]
А можно так:

s='1 '+'p p1 p2 p3';[SED u+'menu1',s]
s='2 '+'p p2 p3 p4';[SED u+'menu2',s]

и т.д.
тогда строчки могут не быть уникальными, и с пробелами мучиться не надо. :)


: Понятно, что [user] нужен здесь для исключения вероятности
: коллизий в extrd.dat между различными пользователями;
: это, разумеется не поможет, если под одним именем
: одновременно работают несколько пользователей.
Можно вместо [user] использовать [SF 0, 9] (с последующей чисткой базы, а то потом на диске не поместится :)





Пpишедшие ответы: