elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Código Fuente para Renombrar texto en Pseint.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Código Fuente para Renombrar texto en Pseint.  (Leído 4,398 veces)
curiosport

Desconectado Desconectado

Mensajes: 35


Ver Perfil
Código Fuente para Renombrar texto en Pseint.
« en: 13 Enero 2016, 19:48 pm »

Hola a todos

Mi objetivo es lograr una transformación de varias líneas de texto, por darles unos ejemplos:

Este es el texto que ingreso:
03.02 Ejercicio Lineal
03.03 Ejercicio Aritmético
03.03.01 Ejercicio Aritmético más complejo

Y quiero que me imprima esto:
videos/es03_02.flv
videos/es03_03.flv
videos/es03_03_01.flv

Si se fijan bien, el punto cambió a guión bajo, y el resto de texto desapareció.

El uso que le voy a dar a esto es para generar link's de varios videos que tengo.

Algunos me dirán que porque no solo ingreso los números y así el proceso será más sencillo, el problema es que la lista de nombres que tengo es bien larga y tendría que borrar de uno en uno para así poder seleccionar solo los números.

Si no es posible en Pseint démenlo en cualquier otro lenguaje de programación pero que pueda usarlo.

Gracias, espero que me puedan ayudar.


En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.866



Ver Perfil
Re: Código Fuente para Renombrar texto en Pseint.
« Respuesta #1 en: 13 Enero 2016, 21:12 pm »

Si no es posible en Pseint démenlo en cualquier otro lenguaje de programación pero que pueda usarlo.

Es algo simple que puedes hacer en practicamente cualquier lenguaje... te muestro unos ejemplos:

C#:
Código
  1. public static string RenameValue(string value) {
  2.  
  3. value = value.Substring(0, value.IndexOf(' ')).Replace('.', '_');
  4. return string.Format("videos/es{0}.flv", value);
  5. }
  6.  
  7. string[] values = {
  8. "03.02 Ejercicio Lineal",
  9. "03.03 Ejercicio Aritmético",
  10. "03.03.01 Ejercicio Aritmético más complejo"
  11. };
  12.  
  13. foreach (string value in values) {
  14. Console.WriteLine(RenameValue(value));
  15. }

Vb.Net:
Código
  1. Public Shared Function RenameValue(ByVal value As String) As String
  2.  
  3.    value = value.Substring(0, value.IndexOf(" "c)).Replace("."c, "_"c)
  4.    Return String.Format("videos/es{0}.flv", value)
  5.  
  6. End Function
  7.  
  8. Dim values As String() =
  9.    {
  10.        "03.02 Ejercicio Lineal",
  11.        "03.03 Ejercicio Aritmético",
  12.        "03.03.01 Ejercicio Aritmético más complejo"
  13.    }
  14.  
  15. For Each value As String In values
  16.    Console.WriteLine(RenameValue(value))
  17. Next

Ruby:
Código
  1. # -*- coding: Windows-1252 -*-
  2.  
  3. values = [
  4. "03.02 Ejercicio Lineal",
  5. "03.03 Ejercicio Aritmético",
  6. "03.03.01 Ejercicio Aritmético más complejo"
  7. ]
  8.  
  9. def rename_value(value)
  10.    value = value[0, value.index(' ')].gsub!(".", "_")
  11.    return "videos/es%s.flv" % [value]
  12. end
  13.  
  14. for value in values
  15.   puts rename_value(value)
  16. end
  17.  
  18. __END__

Python:
Código
  1. # -*- coding: Windows-1252 -*-
  2.  
  3. values = [
  4.        "03.02 Ejercicio Lineal",
  5. "03.03 Ejercicio Aritmético",
  6. "03.03.01 Ejercicio Aritmético más complejo"
  7. ]
  8.  
  9. def rename_value(value):
  10.    value = value[0:value.index(" ")].replace(".", "_")
  11.    return "videos/es{0}.flv".format(value)
  12.  
  13. for value in values:
  14.    print rename_value(value)

También puedes utilizar reemplazamiento de string mediante expresioens regulares si lo prefieres...

Saludos!


« Última modificación: 13 Enero 2016, 21:15 pm por Eleкtro » En línea



curiosport

Desconectado Desconectado

Mensajes: 35


Ver Perfil
Re: Código Fuente para Renombrar texto en Pseint.
« Respuesta #2 en: 13 Enero 2016, 21:45 pm »

string[] values = {
   "03.02 Ejercicio Lineal",
   "03.03 Ejercicio Aritmético",
   "03.03.01 Ejercicio Aritmético más complejo"

Gracias por la ayuda Eleкtro pero esos datos los voy a copiar y pegar en el programa cuando yo los necesite, no los quiero ingresar directamente al código fuente.
En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.866



Ver Perfil
Re: Código Fuente para Renombrar texto en Pseint.
« Respuesta #3 en: 14 Enero 2016, 07:38 am »

Gracias por la ayuda Eleкtro pero esos datos los voy a copiar y pegar en el programa cuando yo los necesite, no los quiero ingresar directamente al código fuente.

Claro, eso era obvio, pero simplemente tienes que adaptar los ejemplos de arriba a un textbox...

Vb.Net:
Código
  1. Dim values As String() = TextBox1.Text.Split({Environment.NewLine}, StringSplitOptions.RemoveEmptyEntries)

C#:
Código
  1. string[] values = TextBox1.Text.Split({Environment.NewLine}, StringSplitOptions.RemoveEmptyEntries);

saludos
En línea



curiosport

Desconectado Desconectado

Mensajes: 35


Ver Perfil
Re: Código Fuente para Renombrar texto en Pseint.
« Respuesta #4 en: 15 Enero 2016, 06:02 am »

Claro, eso era obvio, pero simplemente tienes que adaptar los ejemplos de arriba a un textbox...
Vb.Net:
C#:
saludos

Sorry, olvidé decirte que ya empecé a trabajar con Python, me gustó mucho ese código y lo hago en conjunto con ideone.com  ¿podrías por favor darme el código para ingresar los datos desde python?

Desde ya, muchas gracias.
En línea

curiosport

Desconectado Desconectado

Mensajes: 35


Ver Perfil
Re: Código Fuente para Renombrar texto en Pseint.
« Respuesta #5 en: 15 Enero 2016, 06:28 am »

Olvídalo Eleкtro, ya lo logré, lo hice usando este código:

Código:
x=1
while x<=3:
    values = [raw_input()]
    def rename_value(value):
        value = value[0:value.index(" ")].replace(".", "_")
return "videos/es{0}.flv".format(value)
    for value in values:
print rename_value(value)
    x=x+1

La razón por la que usé while es porque ideone.com solo me detecta la primera línea que ingreso en su cuadro de texto, entonces para solucionar eso hago que el proceso se repita igual al número de líneas que ingreso para renombrar.

De todos modos, no espero que lo entiendas porque no es necesario que lo hagas ;D

Al fin y al cabo, Gracias por todo.
« Última modificación: 15 Enero 2016, 06:31 am por curiosport » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Codigo fuente para aprender
Programación Visual Basic
Rosss 4 2,664 Último mensaje 22 Febrero 2006, 13:28 pm
por MaLkAvIaN_NeT
codigo fuente de un nuke para msn « 1 2 3 »
Programación Visual Basic
vodka 26 8,877 Último mensaje 21 Marzo 2006, 00:53 am
por Kpax
(Aporte) Código fuente Pasar texto a negrita y cursiva o plana
Java
Senior++ 1 24,380 Último mensaje 22 Octubre 2012, 17:51 pm
por 1mpuls0
Google se burla de la NSA con texto oculto en el código fuente de End-to-End
Noticias
wolfbcn 2 2,488 Último mensaje 7 Junio 2014, 08:33 am
por sirdarckcat
Diseñan una fuente de texto especialmente pensada para programar
Noticias
wolfbcn 0 1,017 Último mensaje 10 Febrero 2016, 14:13 pm
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines