Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
¿ Existe Una Propiedad Como "index" En Cadenas O Arrays ?
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje ¿ 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
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje 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...
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje 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
 



 
última edición por vuott el Jueves, 20 Septiembre 2018, 17:45; editado 4 veces 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje 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
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje 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...
 




===================
No podemos regresar
 
última edición por shordi el Domingo, 23 Septiembre 2018, 09:50; editado 1 vez 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje 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
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
última edición por Shell el Domingo, 23 Septiembre 2018, 13:09; editado 1 vez 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje 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...      
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Existe Alguna Función Para "Parsear&... arubioc General 2 Miercoles, 28 Marzo 2012, 14:46 Ver último mensaje
arubioc
No hay nuevos mensajes Un Detalle Con El Insert Into Gambas Value... jousseph Bases de Datos 5 Domingo, 04 Noviembre 2012, 20:58 Ver último mensaje
Shell
No hay nuevos mensajes Obtener Numeros Casuales Desde Los File-de... vuott Aplicaciones/Fragmentos de Código 1 Sabado, 31 Octobre 2015, 20:27 Ver último mensaje
shordi
No hay nuevos mensajes Ejecutar Archivos Audio MP3 Con La Clase &... vuott Aplicaciones/Fragmentos de Código 5 Lunes, 02 Diciembre 2019, 13:28 Ver último mensaje
tincho
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron