getindexesfromhash
Функция поиска индексов строки в списке строк в соответствии с хэш-таблицей.
Синтаксис
indx = getindexesfromhash(h_id, str);
Аргументы
| Имя | Тип данных | Описание |
|---|---|---|
| h_id | integer |
Идентификатор хэш-таблицы, в которой осуществляется поиск |
| str | string |
Строка, поиск которой осуществляется |
Описание
getindexesfromhash(h_id, str) – функция осуществляет поиск индексов строки
str в списке строк в соответствии с хэш-таблице h_id.
Хэш-таблицы предназначены для обеспечения ускорения поиска идентификатора в списке строк.
Результат
| Имя | Тип данных | Описание |
|---|---|---|
| indx | intarray |
Массив индексов в списке строк |
Пример
var
s_01: string = "string1" + chr(10) + "string2",
s_02: string = "string1";
//создание списка строк
slist = createstringlist;
//загрузим строку s_01 в список
settextstringlist(slist, s_01);
//добавим строку s_02 в список
i = addstringlist(slist, s_02, 0);
//создадим хэш-таблицу
hasht = createstringlisthash(slist, 4095);
//получим индексы строки
indexes = getindexesfromhash(hasht, "string1");
//уничтожим список
freeobject(slist);
//уничтожим хэш-таблицу
freeobject(hasht);
В процессе выполнения примера при помощи функции createstringlist будет создан
список строк с идентификатором slist. В список строк slist
при помощи функции settextstringlist будет загружена строка, объявленная с
разделителем "перевод строки", в результате чего переменная slist будет
содержать идентификатор списка строк ""string1""string2"". Далее, при помощи функции
addstringlist в список строк с идентификатором slist будет
загружена строка "string1". В результате переменная slist будет содержать
идентификатор списка строк ""string1""string2""string1"", переменной i будет
присвоено значение 2. При помощи функции createstringlisthash будет создана
хэш-таблица с идентификатором hasht для списка строк с идентификатором
slist. При помощи функции getindexesfromhash будет получен
массив индексов строки "string1" в списке строк slist, переменной
indexes будет присвоено значение массива [0, 2]. Перед завершением примера
список строк и хэш-таблица удаляются при помощи функции freeobject.
Дополнительные материалы
Нет.