Lsearch — различия между версиями

Материал из Egghelp.ru - TCL/TK Eggdrop Wiki
Перейти к: навигация, поиск
(Новая: Команда проверяет наличие заданного элемента в списке. '''СИНТАКСИС''' lsearch ''?mode? list pattern'' '''ОПИСАНИЕ...)
 
(См. также)
 
(не показана одна промежуточная версия этого же участника)
Строка 31: Строка 31:
 
== См. также ==
 
== См. также ==
 
* [[set]] - присвоение
 
* [[set]] - присвоение
* [[putlog]] - вывод сообщения в лог-файл
+
* [[list]] - создание списка
* [[list]] - создание списка
+
* [[string]] - операции со строками
 +
* [[regexp]] - регулярные выражения
 
* [[lrange]] - выборка нескольких элементов списка
 
* [[lrange]] - выборка нескольких элементов списка
 
* [[llength]] - длина списка
 
* [[llength]] - длина списка

Текущая версия на 11:26, 14 октября 2008

Команда проверяет наличие заданного элемента в списке.

СИНТАКСИС

lsearch ?mode? list pattern

ОПИСАНИЕ

Данная команда просматривает по очереди элементы списка list с целью найти первый из них, совпадающий с заданным образцом pattern. Команда возвращает индекс первого найденного такого элемента или "-1", если такой элемент не найден. Аргумент mode указывает конкретный способ сравнения элементов списка и образца. Возможные значения аргумента:

-exact
Означает, что элемент списка должен быть в точности равен образцу

-glob
Означает, что используются такие же правила сравнения, как в команде string match.

-regexp
Означает, что образец считается регулярным выражением, и для сравнения используются те же правила, что и в команде regexp.

Значение по умолчанию -glob.

Пример

 set lst [list a1 a2 abc ab af]
 # Вернет 3
 lsearch $lst "*b"
 # Вернет 4
 lsearch -exact $lst "af"
 # Вернет -1
 lsearch $lst "nonexistent"

См. также

  • set - присвоение
  • list - создание списка
  • string - операции со строками
  • regexp - регулярные выражения
  • lrange - выборка нескольких элементов списка
  • llength - длина списка
  • lsort - сортировка списка
  • lappend - дозапись списка элементами
  • lindex - выборка элемента из списка
  • linsert - вставка элементов в список
  • lreplace - замена элементов в списке
  • TCL.tk - lsearch