Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Parte de una cadena
Message
De
04/02/2008 10:30:11
Hilmar Zonneveld
Independent Consultant
Cochabamba, Bolivie
 
Information générale
Forum:
Visual FoxPro
Catégorie:
Problèmes
Versions des environnements
Visual FoxPro:
VFP 9 SP2
Database:
MS SQL Server
Divers
Thread ID:
01288881
Message ID:
01289068
Vues:
13
This message has been marked as the solution to the initial question of the thread.
>Hola hilmar.
>El asunto es que el usuario ingresa esa cadena dentro de un archivo TXT, el archivo puede tener:
>
>
>
>
>Cadena de caracteres__(Seccion)__con otra cadena__(Otra)__
>
>
>
>Tengo que buscar todo lo que comience por __( y termine por )__
>Lo que el usuario ingresa no esta bajo mi control, aun asi debo extraer lo que escribe de otras cadenas en un archivo plano.

Bueno, en ese caso, las funciones que te mencioné son apropiadas. Por ejemplo, el siguiente ejemplo extrae todo el texto desde "(" hasta ")":
lcCadenaUsuario = "Cadena de caracteres__(Seccion)__con otra cadena__(Otra)__"
local lnInicio, lnFin
lnInicio = at("(", lcCadenaUsuario)
lnFin = at(")", lcCadenaUsuario)
do case
case lnInicio = 0 or lnFin = 0
  MessageBox("No se encuentran los paréntesis requeridos.")
case lnInicio > lnFin
  MessageBox("Los paréntesis no están en el orden correcto.")
otherwise && No hay problema, extraer el string
  * Extraer, incluyendo paréntesis:
  lcExtracto = substr(lcCadenaUsuario, lnInicio, lnFin - lnInicio + 1
  * o bien, excluyendo paréntesis:
  * lcExtracto = substr(lcCadenaUsuario, lnInicio + 1, lnFin - lnInicio - 1
  ? "El texto extraído es:", lcExtracto
endcase
Como no lo probé, es posible que tengas que ajustar ligeramente los cálculos, especialmente los límites de extracción (es decir, de dónde hasta dónde).

HTH,

Hilmar.
Difference in opinions hath cost many millions of lives: for instance, whether flesh be bread, or bread be flesh; whether whistling be a vice or a virtue; whether it be better to kiss a post, or throw it into the fire... (from Gulliver's Travels)
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform