Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-02-2004
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
Question Extraer caracteres de una Cadena!!

Hola amigos.


Mi inquietud es la siguiente, por ejemplo tengo unas tablas de las cuales hago una consulta SQL y cargo los valores en comobobox al cargarce quedan de la siguiente manera.

MARIA - 01
LUCIA - 02
CATALINA - 03

deseo extraer los dos ultimos digitos y no se como hacerlo, ya que estos dos digitos me permitirán restringir la consulta para nuevas cargas.

Espero haber sido explicito en mi pregunta y agradezco cualquier ayuda.

Gracias.
Responder Con Cita
  #2  
Antiguo 18-02-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Si este es el formato puedes usar la función Pos para encontrar la posición del guión y luego la función Copy o RightStr para extraer la parte que contiene los dígitos.

Por cierto, ¿qué tiene que ver esta pregunta con C++ Builder?

// Saludos
Responder Con Cita
  #3  
Antiguo 18-02-2004
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
Gracias por responderme.

La aclaración sobre que tiene que ver con C++ Builder, es que estoy accediento a ello desde esta herramienta y no se como extraer estos digitos para utilizarlos en una consulta en tiempo de ejecución.

Ya ubico el "-" con la Funcion AnsiPos per no se como copiar desde esa posición hasta otra en Delphi es copy(Cadena,Posición_Inicial,Posición_Final) per nose cual es su semejante en C++.

Gracias por pedirme aclaración.
Responder Con Cita
  #4  
Antiguo 18-02-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Ok. No me acuerdo bien de C pero ¿qué en C no puedes simplemente sumarle un entero a un pchar para avanzar el puntero a la posición deseada o simplemente usarlo como arreglo (pstrCadena[PosGuion + 1])?

// Saludos
Responder Con Cita
  #5  
Antiguo 18-02-2004
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
Que pena me falto explicar que no es para C sino para C++ Builder, mis disculpas.
Responder Con Cita
  #6  
Antiguo 18-02-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por subzero
Que pena me falto explicar que no es para C sino para C++ Builder, mis disculpas.
¡Qué va! No te apenes, el apenado soy yo que no sé C++ y sí me di cuenta de que es C++ Builder lo que usas pero creo que ese tipo de manipulaciones de cadenas terminadas en #0 es igual en C que en C++, ¿no?

// Saludos
Responder Con Cita
  #7  
Antiguo 18-02-2004
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
Amigos pude solucionarlo de la siguiente manera:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString A,B;
int i;
A=Edit1->Text;
i=A.AnsiPos("-");
B=A.SubString(i+1,A.Length());
ShowMessage(B);
}

AnsiPos: para ubicar la posición del carácter en la cadena

SubString: Para delimitar el rango que me interesa guardar
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 22:15:56.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi