Documentaciónborrar_por_valor(tab, campo, val)
Nombre
borrar_por_valor - Elimina el primer registro cuyo campo coincide con un valor dado.
Sinopsis
nueva_tabla = tablas.borrar_por_valor(tab, campo, val)
Descripcion
Busca dentro de tab el primer registro para el cual tabla[i][campo] == val y devuelve una nueva TABLA sin ese registro.
Es util para:
- eliminar una coincidencia sin conocer su indice exacto
- quitar la primera aparicion de un valor dentro de un campo
- combinar busqueda y borrado en una sola llamada
Comportamiento
- Localiza primero el indice del registro coincidente.
- Delega la eliminacion en
tablas.borrar_por_indice(). - Devuelve una nueva
TABLAy no modifica la original.
Funciones API relacionadas
tablas.insertar()tablas.borrar_por_indice()
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
| tab | TABLA | Tabla origen. |
| campo | STRING | Nombre del campo donde buscar el valor val. |
| val | ANY | Valor a comparar (STRING/NUMERICO/LOGICO). |
Valor de retorno
TABLA - Nueva tabla sin el primer registro cuyo campo coincide con val.
Ejemplo
ejemplo.blox
INCLUIR "tablas.api"
INCLUIR "strings.api"
FUNCION PRINCIPAL
INICIO
TABLA persona
NUMERICO i, val, sts
STRING campo
TABLA borrado
persona = {
nombre = "Carlos",
edad = 30,
ciudad = "Asuncion"
}
persona = {
nombre = "Juan",
edad = 21,
ciudad = "Encarnacion"
}
persona = {
nombre = "Roberto",
edad = 45,
ciudad = "Concepcion"
}
persona = {
nombre = "Maria",
edad = 19,
ciudad = "Concepcion"
}
//
// Testado OK
//
// Borra el registro con edad = 21
//
campo = "edad"
val = 21
IMPRIMIR ("\nTABLA ORIGINAL\n")
tablas.imprimir(persona)
borrado = tablas.borrar_por_valor(persona, campo, val)
IMPRIMIR ("\n\n\nTABLA CON REGISTRO ELIMINADO\n")
tablas.imprimir(borrado)
FINAL