¿ Existe Una Propiedad Como "index" En Cadenas O Arrays ?


Subject: ¿ Existe Una Propiedad Como "index" En Cadenas O Arrays ?
Buenas!.

Os estaréis acordando de Listbox al nombrar la propiedad "index".

Estoy repasando algo en Python con los indices en las cadenas para mostrar algo parecido en Gambas.

Aunque no lo veo muy viable. La propiedad index mostraría la "primera coincidencia", cosa muy justa, ya que
el carácter, cadena se puede repetir. Quiero decir, que si tuviéramos una cadena, se podría decir
con index que lugar ocupa dentro de la cadena un carácter. Al igual que un array ( de esto no me acuerdo si existe, creo que no ),
es más parecido a cosas del Listbox.

Cuando jugamos con cadenas, creo que seria más cómodo decir hasta el lugar que se encuentra "n" que el uso de números.
Pero claro y si hay más "enes"...de poco valdría. Bueno, se podría hacer cálculos.

De nuevo bucles...

Saludos

Subject: Re: ¿ Existe Una Propiedad Como "index" En Cadenas O Arrays ?
La función instr tiene tres parámetros. El tercero sirve de el index que tú mencionas... más o menos...

Profile PM  
Subject: Re: ¿ Existe Una Propiedad Como "index" En Cadenas O Arrays ?
Shell escribió: [Ver mensaje]
Al igual que un array ( de esto no me acuerdo si existe, creo que no )


Es el Método " .Find( ) " del objeto Array.

Exemplum:
phttp://gambaswiki.org/wiki/comp/gb/string[]/find

Last edited by vuott on Thursday, 20 September 2018, 17:45; edited 4 times in total
Profile PM  
Subject: Re: ¿ Existe Una Propiedad Como "index" En Cadenas O Arrays ?
Shordi:

Citar:

La función instr tiene tres parámetros. El tercero sirve de el index que tú mencionas... más o menos...


Es algo que he usado y no recordaba cuando pregunté.

Tenemos tanto para que busque por el comienzo: Instr
Como para que busque desde el final: RInstr

Ahora bien. ¿ Qué pasa si se repite más de una vez el carácter en la cadena ?..

Public Sub Main()

Dim cadena As String
Dim posiciones As Integer[]

cadena = "palabra"

posiciones = ObtenerIndicesCaracterEnCadena(cadena, "a")

End

Public Function ObtenerIndicesCaracterEnCadena(cadena As String, letra As String) As Integer[] ''Obtiene los indices de un caracter que se repite en una cadena

Dim indices As New Integer[]
Dim posicion As Integer

posicion = InStr(cadena, letra)
While posicion > 0 And posicion <= String.Len(cadena)
indices.Add(posicion)
posicion = InStr(cadena, letra, posicion + 1)
Wend
Return indices

End


Resultado:
Citar:

[ 2, 4, 7 ]


Vuott:

Citar:

Es el Método " .Find( ) " del objeto Array.


Y al igual se puede hacer un ejemplo similar al de arriba pero en un array de cadenas.

Son olvidos que tengo. Bueno esta recordarlo. Y bueno seria que tengamos ejemplos nuestros con estas cosas.

Saludos

Subject: Re: ¿ Existe Una Propiedad Como "index" En Cadenas O Arrays ?
Dice Benoit:
Citar:
Hola,

Desde el último commit, permití que las cadenas se usaran como objetos.

Este no es azúcar sintáctico, ya que está completamente implementado en el
Interprete.

Entonces, si S es una cadena, puedes hacer lo siguiente:

S [N] para obtener el carácter N-ésimo de la cadena. ¡Tener cuidado! Al contrario de las
subrutinas String, la primera posición de personaje es cero. Es como usar el
cadena como una matriz de caracteres.

S [N, L] es un equivalente de Mid $ (S, N + 1, L).

S.Len devuelve la longitud de la cadena.

S [] solo trata con la posición de bytes, no puede manejar UTF-8.

Esa nueva sintaxis es más lenta que llamar directamente a Mid $ () y Len (), pero yo
no creas que notaremos la diferencia.

Tal vez agregue una propiedad S.Max para devolver la longitud menos uno, pero
No creo que implemente todas las rutinas de cadenas como métodos de objetos.

O sea, que ahora sí tienes lo que querías, Shell...

Last edited by shordi on Sunday, 23 September 2018, 09:50; edited 1 time in total
Profile PM  
Subject: Re: ¿ Existe Una Propiedad Como "index" En Cadenas O Arrays ?
Shordi:

Citar:

O sea, que ahora sí tienes lo que querías, Shell...


144amarillos_1537704054_271556

Entonces, ¿ puede que veamos esto en la próxima versión ?.
Vaya cambio!.

Gracias por molestarte en traducir y mostrar la información.

Saludos

Last edited by Shell on Sunday, 23 September 2018, 13:09; edited 1 time in total
Subject: Re: ¿ Existe Una Propiedad Como "index" En Cadenas O Arrays ?
Shell escribió: [Ver mensaje]
Shordi:

Citar:

O sea, que ahora sí tienes lo que querías, Shell...


144amarillos_1537704054_271556

Entonces, ¿ puede que veamos esto en la próxima versión ?.
Vaya cambio!.

Gracias por molestarte en traducir y mostrar la información.

Saludos


Las gracias al traductor de google...

Profile PM  

Page 1 of 1


  
You cannot post new topics
You cannot reply to topics
You cannot edit your posts
You cannot delete your posts
You cannot vote in polls
You cannot attach files
You can download files
You cannot post calendar events

   

This is a "Lo-Fi" version of our main content. To view the full version with more information, formatting and images, please click here.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Generation Time: 0.1039s (PHP: -27% SQL: 127%)
SQL queries: 26 - Debug Off - GZIP Enabled