Visual CSharp .NET - extraer numeros de una cadena

   
Vista:

extraer numeros de una cadena

Publicado por alexis (59 intervenciones) el 04/09/2012 00:35:43
buenas tardes que tal, deseaba si me podrian ayudar con este caso
la extraccion de una fecha de esta cadena o numero

string archivo1 = "ejemplo_ejemplo_2012080200_to_2012080300_at_20120807_42323_1.txt";

string archivo2 = "ejemplo_2012080200.txt";


deseo extraer el siguiente numero : 20120802
que seria el año mes y dia

no me a funcionado con substring ni IndexOf

ya que son varios archivos y tienen distinto nombe, el cual solo leo el nombre del archivo para obtener esa informacion
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

extraer numeros de una cadena

Publicado por Ephesia (2 intervenciones) el 21/11/2012 20:51:05
Caso 2
Lo único que tienes que hacer es contar la posición del guión hasta el final, y la
del el final hasta el punto, restar el largo de la de los puntos a la del guión, con esto tendrás el inicio de la posición de la fecha y el final.

Caso 1
En el caso de tener varios guiones habrá que hacer lo mismo pero dentro de un bucle. Recorre la cadena guardando el resultado en una matriz (o utiliza Split) en la posición 0, excepto cuando encuentre un guión, que incrementa la posición y sucesivamente se guarden las posibles fechas en sus posiciones. Luego con otro bucle comprobar que las cadenas contenidas en la matriz son numéricas y tienen el mismo largo , si lo son, borrar el contenido de la posición de la matriz y hay que correr los posteriores una posición hacia arriba de la matriz . Al final contar la matriz y en la última posición borrar la extensión a partir del punto de la extensión.

No importará si el nombre del archivo es más largo o el de la extensión es más corto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

extraer numeros de una cadena

Publicado por Fer ferchu91@hotmail.com (6 intervenciones) el 26/11/2012 22:51:38
Hola, para extraer el nombre del archivo sin la extension tienes este metodo:

string strRes = System.IO.Path.GetFileNameWithoutExtension("nombre del archivo completo");

lo que te devuelve es el texto del nombre del archivo sin su extensión. Así que lo que te queda, es aplicar el metodo Split sobre la cadena strRes, y esto te devolvera un array de strings. Como argumento el metodo split te pide el caracter que usara para separar la cadena, en tu caso es el guion "_"

string[] astr = strRes.Split('_');

A partir de aqui, solo debes recorrer el array astr y determinar las cadenas que son numéricas y las que no.

Espero que te sirva. Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

extraer numeros de una cadena

Publicado por alexis (59 intervenciones) el 27/11/2012 18:49:04
que tal, gracias lo aplicare
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

extraer numeros de una cadena

Publicado por William Alexander Brito Viñas (10 intervenciones) el 27/11/2012 19:54:02
Creo que lo mejor seria usar expresiones regulares es este caso. ¿Hay alguna regla de donde buscar fechas en esa cadena, como por ejemplo seria los primeros 8 digitos que aparezcan?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar