AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Funciones estándar / Funciones de colas, pilas, listas y arrays / Funciones de arrays
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Busca el índice de un elemento en un WLanguage array. Se pueden realizar las siguientes búsquedas:
  • Busca un elemento en una array unidimensional de elementos simples.
  • Busca un elemento en una array bidimensional de elementos simples según una columna.
  • Busca un elemento en una array bidimensional de elementos simples según varias columnas.
  • Busca un elemento en una array unidimensional de estructuras o clases.
  • WINDEV Busque un elemento en un array de registros.
  • Busca un objeto en un array.
Observaciones:
  • Esta función es equivalente a la función ArraySeek.
Ejemplo
MyArray is array of 0 string
// Fill the array
Add(MyArray, "WINDEV")
Add(MyArray, "WEBDEV")
Add(MyArray, "WINDEV and WEBDEV")
// Find "WINDEV"
ResIndex is int
ResSubscript = Seek(MyArray, asLinearFirst, "WINDEV")
Info("The WINDEV string is found at index: " + ResIndex)
// Returns: "The WINDEV string is found at index: 1"
WINDEVCódigo de Usuario (UMC)
arrCalendar is array of gglCalendars
// Find a calendar identified by its title
Seek(arrCalendar, asLinear, "title", "Professional calendar")
Sintaxis

Buscando un elemento en una array unidimensional de elementos simples Ocultar los detalles

<Result> = Seek(<Array name> , <Type of search> , <Sought value> [, <Start index>])
<Result>: Integro
  • Índice del elemento buscado,
  • -1 si el elemento no se encuentra en la array.
<Array name>: Array
Nombre de la variable de tipo Array a utilizar. Este array debe ser unidimensional.
Esta array también puede corresponder a una array de elementos simples de una Variable avanzada.
<Type of search>: Constante de tipo Integer
Tipo de búsqueda a realizar:
asBinaryBúsqueda binaria.
Este modo de búsqueda es rápido, pero debe utilizarse en una array ordenada de forma ascendente, sin duplicados (véase ArraySort).
asLinearBúsqueda lineal. Comienza la búsqueda:
  • del primer elemento.
  • a partir del valor del parámetro <índice de inicio>.
La búsqueda se detiene en cuanto se encuentra un elemento.
asLinearFirstBúsqueda lineal desde el primer elemento. <Índice de inicio> se ignora cuando se especifica esta constante.
asLinearLastBúsqueda lineal desde el último elemento. Esta constante no debe utilizarse si se especifica <índice de inicio>.
asLinearNextBúsqueda lineal del siguiente elemento. Esta búsqueda se realiza a partir de la posición actual o del valor de <índice inicial>.
asLinearPreviousBúsqueda lineal del elemento anterior. Esta búsqueda se realiza a partir de la posición actual o del valor de <índice inicial>.
El tipo de búsqueda se puede combinar con una o más opciones de búsqueda:
tccIgnoreAccentBuscar ignorando los caracteres acentuados.
Esta opción sólo se puede utilizar en la arrays de los strings de caracteres.
tccIgnoreCaseBuscar ignorando el caso.
Esta opción sólo se puede utilizar en la arrays de los strings de caracteres.
tccIgnoreInsideSpaceBuscar ignorando los espacios dentro de las cadenas.
Esta opción sólo se puede utilizar en la arrays de los strings de caracteres.
tccIgnorePonctuationAndSpaceBuscar ignorando los espacios y la puntuación.
Esta opción sólo se puede utilizar en la arrays de los strings de caracteres.
tccIgnoreSpaceBuscar ignorando los espacios al principio y al final de las cadenas.
Esta opción sólo se puede utilizar en la arrays de los strings de caracteres.
tccLexicographicOrderArray ordenada según el orden lingüístico.
Esta opción es useful para una búsqueda dicotómica y no tiene efecto en una búsqueda lineal.
Esta opción sólo se puede utilizar en la arrays de los strings de caracteres.
tccRespectNumericArray ordenada según el orden de los valores numéricos.
Esta opción es useful para una búsqueda dicotómica y no tiene efecto en una búsqueda lineal.
Esta opción sólo se puede utilizar en la arrays de los strings de caracteres.
Java Las constantes utilizadas para definir las opciones de búsqueda no están disponibles.
Para una búsqueda dicotómica, las opciones de búsqueda deben ser exactamente las mismas que se utilizaron para ordenar la array (véase ArraySort).
<Sought value>: Cualquier tipo
Valor del elemento cuyo índice se solicita.
<Start index>: Entero opcional
Posición de inicio de la búsqueda (sólo búsqueda lineal). Este parámetro no es necesario para una búsqueda binaria.

Buscando un elemento en una array bidimensional de elementos simples según una columna Ocultar los detalles

<Result> = Seek(<Array name> , <Type of search> , <Column> , <Sought value> [, <Start index>])
<Result>: Integro
  • Índice del elemento buscado,
  • -1 si el elemento no se encuentra en la array.
<Array name>: Array
Nombre de la variable de tipo Array a utilizar. Este array debe ser bidimensional.
Este array también puede corresponder a un array bidimensional de un tipo avanzado (por ejemplo, ordenar una variable de tipo xlsDocument según los valores de una columna).
<Type of search>: Constante de tipo Integer
Buscar para realizar:
asBinaryBúsqueda binaria.
Este modo de búsqueda es rápido, pero debe utilizarse sobre una array ordenada de forma ascendente, sin duplicados (ArraySort utilizado en la columna de búsqueda).
asLinearBúsqueda lineal. Comienza la búsqueda:
  • del primer elemento.
  • a partir del valor del parámetro <índice de inicio>.
La búsqueda se detiene en cuanto se encuentra un elemento.
asLinearFirstBúsqueda lineal desde el primer elemento. Esta constante no debe utilizarse si se especifica <índice de inicio>.
asLinearLastBúsqueda lineal desde el último elemento. Esta constante no debe utilizarse si se especifica <índice de inicio>.
asLinearNextBúsqueda lineal del siguiente elemento. Esta búsqueda se realiza a partir de la posición actual o del valor de <índice inicial>.
asLinearPreviousBúsqueda lineal del elemento anterior. Esta búsqueda se realiza a partir de la posición actual o del valor de <índice inicial>.
El tipo de búsqueda se puede combinar con una o más opciones de búsqueda:
tccIgnoreAccentBuscar ignorando los caracteres acentuados.
Esta opción sólo se puede utilizar en la arrays de los strings de caracteres.
tccIgnoreCaseBuscar ignorando el caso.
Esta opción sólo se puede utilizar en la arrays de los strings de caracteres.
tccIgnoreInsideSpaceBuscar ignorando los espacios dentro de las cadenas.
Esta opción sólo se puede utilizar en la arrays de los strings de caracteres.
tccIgnorePonctuationAndSpaceBuscar ignorando los espacios y la puntuación.
Esta opción sólo se puede utilizar en la arrays de los strings de caracteres.
tccIgnoreSpaceBuscar ignorando los espacios al principio y al final de las cadenas.
Esta opción sólo se puede utilizar en la arrays de los strings de caracteres.
tccLexicographicOrderArray ordenada según el orden lingüístico.
Esta opción es useful para una búsqueda dicotómica y no tiene efecto en una búsqueda lineal.
Esta opción sólo se puede utilizar en la arrays de los strings de caracteres.
tccRespectNumericArray ordenada según el orden de los valores numéricos.
Esta opción es useful para una búsqueda dicotómica y no tiene efecto en una búsqueda lineal.
Esta opción sólo se puede utilizar en la arrays de los strings de caracteres.
Java Las constantes utilizadas para definir las opciones de búsqueda no están disponibles.
Para una búsqueda dicotómica, las opciones de búsqueda deben ser exactamente las mismas que se utilizaron para ordenar la array (véase ArraySort).
<Column>: Entero o cadena de caracteres
  • Simple array: Índice de la columna donde se realizará la búsqueda.
  • array avanzada: Property para la cual se debe realizar la búsqueda. También tienes la capacidad de usar propiedades encadenadas ("Border.Color" por ejemplo).
<Sought value>: Cualquier tipo
Valor del elemento cuyo índice o Property se solicita.
<Start index>: Entero opcional
Posición de inicio de la búsqueda (sólo búsqueda lineal). Este parámetro no es necesario para una búsqueda binaria.

Buscando un elemento en una array bidimensional de elementos simples según varias columnas Ocultar los detalles

<Result> = Seek(<Array name> , <Type of search> , <Columns> , <Sought value 1> [, <Sought value 2> [... [, <Sought value N>]]] [, <Start index>])
<Result>: Integro
  • Índice del elemento buscado,
  • -1 si el elemento no se encuentra en la array.
<Array name>: Array
Nombre de la variable de tipo Array a utilizar. Este array debe ser bidimensional.
Este array también puede corresponder a un array bidimensional de tipo avanzado (ordenación realizada sobre un Variable de tipo xlsDocument según los valores de una o varias columnas, por ejemplo).
<Type of search>: Constante de tipo Integer
Buscar para realizar. No hay búsqueda binaria disponible.
asLinearBúsqueda lineal. Comienza la búsqueda:
  • desde el primer elemento
  • desde el <Índice inicial>
La búsqueda se detiene en cuanto se encuentra un elemento.
asLinearFirstBúsqueda lineal desde el primer elemento. Esta constante no debe utilizarse si se especifica <índice de inicio>.
asLinearLastBúsqueda lineal desde el último elemento. Esta constante no debe utilizarse si se especifica <índice de inicio>.
asLinearNextBúsqueda lineal del siguiente elemento. Esta búsqueda se realiza a partir de la posición actual o del valor de <índice inicial>.
asLinearPreviousBúsqueda lineal del elemento anterior. Esta búsqueda se realiza a partir de la posición actual o del valor de <índice inicial>.
El tipo de búsqueda se puede combinar con una o más opciones de búsqueda:
tccIgnoreAccentBuscar ignorando los caracteres acentuados.
Esta opción se aplica a todas las columnas en las que se realiza la búsqueda.
Esta opción es useful para el arrays de las cadenas de caracteres.
tccIgnoreCaseBuscar ignorando el caso.
Esta opción se aplica a todas las columnas en las que se realiza la búsqueda.
Esta opción es useful para el arrays de las cadenas de caracteres.
tccIgnoreInsideSpaceBuscar ignorando los espacios dentro de las cadenas.
Esta opción se aplica a todas las columnas en las que se realiza la búsqueda.
Esta opción es useful para el arrays de las cadenas de caracteres.
tccIgnorePonctuationAndSpaceBuscar ignorando los espacios y la puntuación.
Esta opción se aplica a todas las columnas en las que se realiza la búsqueda.
Esta opción es useful para el arrays de las cadenas de caracteres.
tccIgnoreSpaceBuscar ignorando los espacios al principio y al final de las cadenas.
Esta opción se aplica a todas las columnas en las que se realiza la búsqueda.
Esta opción es useful para el arrays de las cadenas de caracteres.
tccLexicographicOrderArray ordenada según el orden lingüístico.
Esta opción es useful para una búsqueda dicotómica y no tiene efecto en una búsqueda lineal.
Esta opción se aplica a todas las columnas en las que se realiza la búsqueda.
Esta opción es useful para el arrays de las cadenas de caracteres.
tccRespectNumericArray ordenada según el orden de los valores numéricos.
Esta opción es useful para una búsqueda dicotómica y no tiene efecto en una búsqueda lineal.
Esta opción se aplica a todas las columnas en las que se realiza la búsqueda.
Esta opción es useful para el arrays de las cadenas de caracteres.
Java Las constantes utilizadas para definir las opciones de búsqueda no están disponibles.
Para una búsqueda dicotómica, las opciones de búsqueda deben ser exactamente las mismas que se utilizaron para ordenar la array (véase ArraySort).
<Columns>: Cadena de caracteres
  • Simple array: Lista de columnas donde se debe realizar la búsqueda. Las diferentes columnas deben estar separadas por punto y coma. Ejemplo: "2;3" para realizar una búsqueda en las columnas 2 y 3.
  • array avanzada: Lista de propiedades donde se debe realizar la búsqueda. Las propiedades deben estar separadas por punto y coma.
<Sought value 1>: Cualquier tipo
Valor del elemento cuyo índice o Property se solicita. Se debe indicar un valor para cada columna o Property especificada en <Columnas
<Sought value 2>: Cualquier tipo opcional
Valor del elemento cuyo índice o Property se solicita. Se debe indicar un valor para cada columna o Property especificada en <Columnas
<Sought value N>: Cualquier tipo opcional
Valor del elemento cuyo índice o Property se solicita. Se debe indicar un valor para cada columna o Property especificada en <Columnas
<Start index>: Entero opcional
Posición de inicio de la búsqueda (sólo búsqueda lineal). Este parámetro no es necesario para una búsqueda binaria.

Buscando un elemento en una array unidimensional de estructuras, clases, tipos avanzados o registros Ocultar los detalles

<Result> = Seek(<Array name> , <Type of search> , <Sought members> , <Sought value 1> [, <Sought value 2> [... [, <Sought value N>]]] [, <Start index>])
<Result>: Integro
  • Índice del elemento buscado,
  • -1 si el elemento no se encuentra en la array.
<Array name>: Array
Nombre de la variable de tipo Array a utilizar. Este array debe ser unidimensional. Esta array puede ser:
  • una array de clases,
  • una array de estructuras,
  • una array de tipos avanzados,
  • WINDEV una array de registros.
<Type of search>: Constante de tipo Integer
Tipo de búsqueda a realizar:
asBinaryBúsqueda binaria.
Este modo de búsqueda es rápido, pero debe utilizarse en una array ordenada de forma ascendente, sin duplicados (ArraySort).
Este modo de búsqueda también se puede utilizar cuando se realiza una búsqueda en un único miembro.
asLinearBúsqueda lineal. Comienza la búsqueda:
  • desde el primer elemento
  • desde el <Índice inicial>
La búsqueda se detiene en cuanto se encuentra un elemento.
asLinearFirstBúsqueda lineal desde el primer elemento. Esta constante no debe utilizarse si se especifica <índice de inicio>.
asLinearLastBúsqueda lineal desde el último elemento. Esta constante no debe utilizarse si se especifica <índice de inicio>.
asLinearNextBúsqueda lineal del siguiente elemento. Esta búsqueda se realiza a partir de la posición actual o del valor de <índice inicial>.
asLinearPreviousBúsqueda lineal del elemento anterior. Esta búsqueda se realiza a partir de la posición actual o del valor de <índice inicial>.
El tipo de búsqueda se puede combinar con una o más opciones de búsqueda:
tccIgnoreAccentBuscar ignorando los caracteres acentuados.
Esta opción se aplica a todos los miembros en los que se realiza la búsqueda.
Esta opción es useful para los miembros de la "cadena de caracteres".
tccIgnoreCaseBuscar ignorando el caso.
Esta opción se aplica a todos los miembros en los que se realiza la búsqueda.
Esta opción es useful para los miembros de la "cadena de caracteres".
tccIgnoreInsideSpaceBuscar ignorando los espacios dentro de las cadenas.
Esta opción se aplica a todos los miembros en los que se realiza la búsqueda.
Esta opción es useful para los miembros de la "cadena de caracteres".
tccIgnorePonctuationAndSpaceBuscar ignorando los espacios y la puntuación.
Esta opción se aplica a todos los miembros en los que se realiza la búsqueda.
Esta opción es useful para los miembros de la "cadena de caracteres".
tccIgnoreSpaceBuscar ignorando los espacios al principio y al final de las cadenas.
Esta opción se aplica a todos los miembros en los que se realiza la búsqueda.
Esta opción es useful para los miembros de la "cadena de caracteres".
tccLexicographicOrderArray ordenada según el orden lingüístico.
Esta opción es useful para una búsqueda dicotómica y no tiene efecto en una búsqueda lineal.
Esta opción se aplica a todos los miembros en los que se realiza la búsqueda.
Esta opción es useful para los miembros de la "cadena de caracteres".
tccRespectNumericArray ordenada según el orden de los valores numéricos.
Esta opción es useful para una búsqueda dicotómica y no tiene efecto en una búsqueda lineal.
Esta opción se aplica a todos los miembros en los que se realiza la búsqueda.
Esta opción es useful para los miembros de la "cadena de caracteres".
Java Las constantes utilizadas para definir las opciones de búsqueda no están disponibles.
Para una búsqueda dicotómica, las opciones de búsqueda deben ser exactamente las mismas que se utilizaron para ordenar la array (véase ArraySort).
<Sought members>: Cadena de caracteres
  • Estructuras y clases: Nombre de los miembros buscados. Si se buscan varios miembros, sus nombres deberán ir separados por punto y coma.. También tiene la capacidad de encadenar a los miembros buscados (usando "." o ":" entre los miembros).. En una clase, también tiene la posibilidad de realizar una búsqueda en las propiedades de la clase.
  • Tipos avanzados: Nombre de las propiedades buscadas. Si se buscan varias propiedades, sus nombres deberán ir separados por punto y coma.. También tiene la capacidad de encadenar las propiedades buscadas (usando "." o ":" entre las propiedades). Por ejemplo, "Border.Color".
  • Registros: Nombre de los artículos buscados. En caso de que se busquen varios elementos, sus nombres deberán ir separados por punto y coma.. También puede encadenar los elementos buscados (utilizando "." o ":" entre las propiedades).
<Sought value 1>: Cualquier tipo
Valor del elemento cuyo miembro o Property se solicita. Se debe indicar un valor para cada miembro especificado en <Socios buscados>.
<Sought value 2>: Cualquier tipo opcional
Valor del elemento cuyo miembro o Property se solicita. Se debe indicar un valor para cada miembro especificado en <Socios buscados>.
<Sought value N>: Cualquier tipo opcional
Valor del elemento cuyo miembro o Property se solicita. Se debe indicar un valor para cada miembro especificado en <Socios buscados>.
<Start index>: Entero opcional
Posición de inicio de la búsqueda (sólo búsqueda lineal). Este parámetro no es necesario para una búsqueda binaria.

Búsqueda del índice de un objeto en una array unidimensional (sintaxis para el enlace de datos) Ocultar los detalles

<Result> = Seek(<Array name> , <Type of search> , <Sought object>)
<Result>: Integro
  • Índice del objeto buscado,
  • -1 si el objeto no se encuentra en la array.
<Array name>: Array
Nombre de la variable de tipo Array a utilizar. Este array debe ser unidimensional. Esta array puede ser una array de clases, clases dinámicas, estructuras, estructuras dinámicas, tipos avanzados, tipos avanzados dinámicos.
<Type of search>: Constante de tipo Integer
Tipo de búsqueda a realizar:
asLinearBúsqueda lineal.
<Sought object>: Cualquier tipo
Instancia del objeto buscado.
Observaciones
  • Esta función no se puede utilizar en la arrays fija.
  • Esta función se puede utilizar en la arrays de variables avanzadas.
  • Esta función no se puede utilizar en la array de "Objetos dinámicos".
  • Esta función se puede utilizar en la arrays de los objetos escritos.
    • Por ejemplo, no se puede realizar ninguna búsqueda en los siguientes array:
      t is array of 2 objects dynamic
    • Por ejemplo, se puede realizar una búsqueda en los siguientes array:
      t is array of 2 MyClass

      t is array of 2 MyClass dynamic
  • No se puede realizar ninguna búsqueda en una array de variantes.
  • No se puede realizar ninguna búsqueda en las cadenas de Unicode.
    Java Si el tipo de búsqueda es dicotómico y si el array no está clasificado, no se mostrará ningún error de WLanguage pero el resultado de la búsqueda será indefinido.
Componente: wd290vm.dll
Versión mínima requerida
  • Versión 14
Esta página también está disponible para…
Comentarios
Exemplo Seek
//Vou ensinar como Procurar um valor dentro array

tabListanumeros is array of 0 int
ArrayAddLine(tabListanumeros,10)
ArrayAddLine(tabListanumeros,5)
ArrayAddLine(tabListanumeros,3)
ArrayAddLine(tabListanumeros,1)
//Coloca Array numa String

EDT_Texto = ArrayToString(tabListanumeros)

n_procura is int=Seek(tabListanumeros, asLinearFirst, EDT_PROCURA)
IF n_procura=-1 THEN
EDT_resultado="Nao Achou"
ELSE
EDT_resultado="Achou"
END

// Blog com Video e Exemplo
http://windevdesenvolvimento.blogspot.com.br/2016/12/aula-993-windev-array-005-seek.html
https://www.youtube.com/watch?v=Q5yuh3bu8J8
De matos
13 12 2016

Última modificación: 27/05/2022

Señalar un error o enviar una sugerencia | Ayuda local