Se pide que diseñe un programa que lea un texto (sin acentos ni otros caracter caracteres que no sean letras) y lo vuelva a escribir en formato SMS. Por ejemplo, si el usuario del programa escribe:
Hola que tal por donde estas
Debería escribir:
ola que tl x donde estas
A tal efecto, considera los siguientes cambios a hacer sobre la cadena (en el orden indicado):
• En las palabras que empiezan por H, suprimir la h
• Las silabas "que" o "qui" cambiarlas por "que" o "ki".
• Las silabas "por" cambiarlas por "x".
• En los monosilabos de una sola vocal y como minimo 2 letras, suprimir la vocal. Considere que un
monosilabo es un término que solo tiene una vocal. Naturalmente las vocales de "que" o "ki" no se han de sustituir.
Hasta el momento lo he hecho todo, pero la ultima parte de suprimir la vocal en los monosilabos, no se como hacerlo. Tengo esto de momento:
Código
import string def sin_h(s): if s[0] in 'Hh': s1= s[1:] else: s1='' s1=s1.replace(' H'," ") s1=s1.replace(' h',' ') rep_q(s1) def rep_q(s): s=s.replace('Que','que') s=s.replace('que','que') s=s.replace('Qui','ki') s=s.replace('qui','ki') rep_x(s) def rep_x(t): t=t.replace('Per','x') t=t.replace('per','x') sin_voc(t) def sin_voc(s): ... ... txt=raw_input('Escribe un texto: ') sin_h(txt)
Como veis, me falta la ultima funcion de sin vocales, donde solo hay q eliminar la vocal de los monosilabos, no de todas las palabras... No se como hacerlo..
Si alguien me puede ayudar...
Gracias