parser

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

 

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

а я делаю так:

mashi 21.05.2006 17:04

@main[]
$tNameList[^table::create{name
...
}]
# Имеющуюся таблицу с именами перевожу в хеш таблиц, ключи которого формируются на основе первой буквы.
$hRubric[^tNameList.hash{^key(1)[$tNameList.name]}[$.distinct[tables]]]
# Вот и все -- алфавитный указатель готов.
# Остается только все это дело вывести:
$tRL[^hRubric._keys[letter]]
^tRL.sort{$tRL.letter}

<ul>
^tRL.menu{
	<li>$tRL.letter
		<ul>$_tR[$hRubric.[$tRL.letter]]
			^_tR.menu{<li>$_tR.name</li>}
		</ul>
	</li>
}
</ul>


###########################################
# формирует ключ хеша алфавитного указателя
@key[letterAmount;name]
$result[^name.mid(0;$letterAmount)]
$result[^result.trim[]]
$result[^result.upper[]]
# end @key[letterAmount;name]