Ver la Versión Completa : Extraer caracteres de una Cadena!!
subzero
18-02-2004, 15:27:15
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.
roman
18-02-2004, 15:35:27
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
subzero
18-02-2004, 15:49:26
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.
roman
18-02-2004, 15:53:36
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
subzero
18-02-2004, 16:02:51
Que pena me falto explicar que no es para C sino para C++ Builder, mis disculpas.
roman
18-02-2004, 16:04:55
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
subzero
18-02-2004, 22:15:50
;) 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
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.