Documentaciónposicion_ocurrencias(texto, sub)
Nombre
posicion_ocurrencias - Busca todas las posiciones donde aparece una subcadena.
Sinopsis
info = strings.posicion_ocurrencias(texto, sub)
Descripcion
Busca todas las posiciones donde aparece una subcadena dentro de un texto.
Es util para:
- localizar patrones repetidos
- recorrer coincidencias una por una
- analizar estructura interna de cadenas
Comportamiento
- Permite ocurrencias solapadas.
- Si
subesta vacio, retornacant = 0. - Devuelve una
TABLAconcantypos, dondeposes un vector numerico 0-based con posiciones BLOX 1-based en el texto.
Funciones API relacionadas
strings.contiene_substr()strings.contar_ocurrencias()strings.reemplazar_primero()strings.reemplazar_todos()strings.extraer_entre()
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
| texto | STRING | Texto que podria contener 0, 1 o varias ocurrencias de un sub-texto. |
| sub | STRING | Sub-texto que buscaremos en texto. |
Valor de retorno
TABLA - TABLA con campos cant y pos. pos es un VECTOR numerico 0-based con posiciones BLOX 1-based dentro del texto.
Ejemplo
ejemplo.blox
// Retorna la cantidad de veces que el 'subestring' aparece en el 'string'.
// Tambien retorna sus posiciones en el 'string'
//
// pos = strings.posicion_ocurrencias(str, sub)
//
//
//
INCLUIR "strings.api"
FUNCION PRINCIPAL
INICIO
STRING str, sub
NUMERICO i, cant
VECTOR pos[]
TABLA ret
str = "No es lo que logras, es lo que superas. Eso es lo que define tu vida."
sub = "lo"
ret = strings.posicion_ocurrencias(str, sub)
pos = ret[1].pos
cant = ret[1].cant
IMPRIMIR("\nHay ", cant, " ocurrencias en las posiciones ")
i = 0
MIENTRAS (i < cant) HACER
IMPRIMIR(pos[i])
SI (i < cant - 1) ENTONCES
IMPRIMIR(", ")
FIN_SI
i = i + 1
FIN_MIENTRAS
FINAL