Réduire le nombre de caractères

vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022 - 16 avril 2009 à 16:17
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 22 avril 2009 à 11:02
Salut !! Est-il possible de réduire le nombre de c ar actères d'une phrase? genre :

"Est-il possible de réduire le nombre de c ar actères d'une phrase?"
devient :
"q mlksjdm flkqjmsldkjmeoirhgmoi"

on remplace certains caractères qui se suivent genre toutes les voyelles précédés d'une consonne.

..?

Merci de vos idées !

12 réponses

jmf0 Messages postés 1566 Date d'inscription mardi 26 décembre 2000 Statut Membre Dernière intervention 5 avril 2013 8
16 avril 2009 à 19:13
Bonjour,

"on remplace certains caractères qui se suivent genre toutes les voyelles précédés d'une consonne."

C'est bien évidemment possible, oui.
Mais tu veux les remplacer par quoi ? (car tu vas rester bien évidemment le décideur et seul responsable de ta logique de "raccourcissement")
Tiens, montre-nous ce que deviendrait la citation ci-dessus (en bleu) en nous expliquant comment et en nous confirmant que ce "comment" serait ^systématiquement applicable.
0
vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022
16 avril 2009 à 20:15
Bon alors j'ai fait un essai mais... je suis sûr qu'il y a mieux, d'où mon re-question :D
Donc on passe de :
on remplace certains caractères qui se suivent genre toutes les voyelles précédés d'une consonne.
à :
o€ УÁŒíe ‡®þai€Š ‡|íþèК ðui Še ŠuiÚªþ €ªÐe þouþš Œš ÚoÞÑŒš ÁÐé‡é¹éŠ ¹'u€e ‡o€Šo€€e&

avec ça:...
Private Sub Command1_Click()

Tx = Replace(Tx, "ab", "$")

Tx = Replace(Tx, "ac", "í")

Tx = Replace(Tx, "ad", "¿")

Tx = Replace(Tx, "af", "¶")

Tx = Replace(Tx, "ag", "§")

Tx = Replace(Tx, "ah", "[")

Tx = Replace(Tx, "aj", "]")

Tx = Replace(Tx, "ak", "ƒ")

Tx = Replace(Tx, "al", "µ")

Tx = Replace(Tx, "am", "^")

Tx = Replace(Tx, "an", "`")

Tx = Replace(Tx, "ap", "{")

Tx = Replace(Tx, "aq", "Ì")

Tx = Replace(Tx, "ar", "|")

Tx = Replace(Tx, "as", "}")

Tx = Replace(Tx, "at", "ø")

Tx = Replace(Tx, "av", "å")

Tx = Replace(Tx, "ay", "ì")

Tx = Replace(Tx, "eb", "Å")

Tx = Replace(Tx, "ec", "Æ")

Tx = Replace(Tx, "ed", "ò")

Tx = Replace(Tx, "ef", "Ø")

Tx = Replace(Tx, "eg", "á")

Tx = Replace(Tx, "eh", "Ê")

Tx = Replace(Tx, "ej", "ó")

Tx = Replace(Tx, "ek", "ñ")

Tx = Replace(Tx, "el", "Ñ")

Tx = Replace(Tx, "em", "£")

Tx = Replace(Tx, "en", "ª")

Tx = Replace(Tx, "ep", "º")

Tx = Replace(Tx, "eq", "±")

Tx = Replace(Tx, "er", "®")

Tx = Replace(Tx, "es", "¨")

Tx = Replace(Tx, "et", "¬")

Tx = Replace(Tx, "ev", "·")

Tx = Replace(Tx, "ey", "Ž")

Tx = Replace(Tx, "b", "Ý")

Tx = Replace(Tx, "c", "‡")

Tx = Replace(Tx, "d", "¹")

Tx = Replace(Tx, "f", "³")

Tx = Replace(Tx, "g", "€")

Tx = Replace(Tx, "h", "¯")

Tx = Replace(Tx, "j", "ã")

Tx = Replace(Tx, "k", "¥")

Tx = Replace(Tx, "l", "¼")

Tx = Replace(Tx, "m", "Ã")

Tx = Replace(Tx, "n", "¤")

Tx = Replace(Tx, "p", "Á")

Tx = Replace(Tx, "q", "ð")

Tx = Replace(Tx, "r", "Ð")

Tx = Replace(Tx, "s", "¦")

Tx = Replace(Tx, "t", "þ")

Tx = Replace(Tx, "v", "Ú")

Tx = Replace(Tx, "y", "Þ")

Tx = Replace(Tx, "z", "Õ")

Tx = Replace(Tx, "cc", "¢")

Tx = Replace(Tx, "ff", "š")

Tx = Replace(Tx, "ll", "¸")

Tx = Replace(Tx, "mm", "÷")

Tx = Replace(Tx, "nn", "†")

Tx = Replace(Tx, "pp", "¡")

Tx = Replace(Tx, "rr", "©")

Tx = Replace(Tx, "ss", "¾")

Tx = Replace(Tx, "tt", "ý")

Tx = Replace(Tx, "a ", "°")

Tx = Replace(Tx, "l ", "½")

Tx = Replace(Tx, "n ", "×")

Tx = Replace(Tx, "r ", "¼")

Tx = Replace(Tx, "s ", "²")

Tx = Replace(Tx, "t ", "~")

Tx = Replace(Tx, "x ", "<")

Tx = Replace(Tx, "é ", ">")

Tx = Replace(Tx, "és", "#")

Tx = Replace(Tx, ".", "&")

Tx = Replace(Tx, ",", "*")

 
End Sub

 
Private Sub Command2_Click()

Me.Caption = Len(Tx.Text)

End Sub

...
ou alors il faudrait faire une liste des mots les plus courants, peut-être que ce serait mieux..??!!
0
vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022
16 avril 2009 à 20:17
hm, la portion :
Tx = Replace(Tx, "b", "Ý")
Tx = Replace(Tx, "c", "?")
Tx = Replace(Tx, "d", "¹")
Tx = Replace(Tx, "f", "³")
Tx = Replace(Tx, "g", "€")
Tx = Replace(Tx, "h", "¯")
Tx = Replace(Tx, "j", "ã")
Tx = Replace(Tx, "k", "¥")
Tx = Replace(Tx, "l", "?")
Tx = Replace(Tx, "m", "Ã")
Tx = Replace(Tx, "n", "?")
Tx = Replace(Tx, "p", "Á")
Tx = Replace(Tx, "q", "ð")
Tx = Replace(Tx, "r", "Ð")
Tx = Replace(Tx, "s", "|")
Tx = Replace(Tx, "t", "þ")
Tx = Replace(Tx, "v", "Ú")
Tx = Replace(Tx, "y", "Þ")
Tx = Replace(Tx, "z", "Õ")
est en trop, je ne l'ai pas complétée...

et si j'ai pris une voyelle et une consonne et non l'inverse en plus, cpour éviter qu'il y a confusion et peut-être une perte...
0
jmf0 Messages postés 1566 Date d'inscription mardi 26 décembre 2000 Statut Membre Dernière intervention 5 avril 2013 8
16 avril 2009 à 21:30
Cà, ami, (ce que tu nous montres) n'est rien d'autre que ce que tu as fait (ton mécanisme) et décidé.
Tu utilises Replace ? C'est bien ... et VB s'arrête là.
Le reste (ce que tu remplaces et par quoi) n'a plus rien à voir avec tel ou tel autre langage de développement, mais tout avec ta conception de tes transformations .... et là : tu es seul avec toi-même, en te faisant toutefois remarquer que tu perds un peu ton temps.... à remplacer deux lettres par une seule ... n'importe quel outil de compression derait mieux.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022
16 avril 2009 à 23:39
Je me doute bien que ma "technique" est loin d'être idéal, c top clair. pour la compression, c'était un peu l'objet de ma "question" mis à part le fait que j'ai du confondre "réduire" et "compresser"... comment faire alors ; une piste ou un nom pour aiguiller "ma quête de gain de temps" ? il ya  bien des bouts de codes pour compresser genre zip et compagnie, mais c'est destiné à mon avis, aux fichiers, je ne vois pas bien comment transposer la chose à du texte simple c'est un peu du martien pour moi tout ça !
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
17 avril 2009 à 09:30
0
vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022
17 avril 2009 à 09:37
Merci Renfield, je vais zieuter ça !!!
0
vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022
20 avril 2009 à 15:35
J'ai zieuté zlib, ça compresse mais ça n'a pas l'air de compresser beaucoup euh... hm... je pense que je vais garder un truc plus à ma porté, la "replace attitude"... en reprenant mon principe et en le transposant sur une liste des mots les plus utilisés dans la langue française... ça donnera ce que ça donnera... :D
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
20 avril 2009 à 15:42
Quelle longueur font les chaines que tu souhaites compresser ?

A en croire la capture que j'avais faite a l'epoque, on passe de 8351 caractères à 87

tout est relatif, mais ca m'a l'air de compresser tout de même un peu...
0
vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022
20 avril 2009 à 23:14
C'est destiné surtout à du mail normal... une dizaine voire, quinzine ligne, pas de quoi se relever la nuit :)
Mais euh, j'ai du loupé qqchose donc, si tu arrives à un tel pourcentage de réduction... je vais rezieuter plus attentivement, Renfield.
0
vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022
22 avril 2009 à 10:59
Salut Renfield, euh... j'ai un peu de mal à dissocié ton code genre répartir les taches :/
Genre un bouton compression, et un bouton décompression... p our la compression ça va mais pour la décompression il me met le message que tu avais écrit :
---------------------------
VBZLib
---------------------------
Erreur, le flux décompressé est différent du flux d'entrée.
---------------------------
OK  
---------------------------

Comment faire pour que ça marche avec deux boutons??!!
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
22 avril 2009 à 11:02
gaffe aux caractères non affichables...
faut pas repartir du contenu du textbox.

stockes ça dans un String ou Byte()

si tu dois faire fi des caractères non affichables, jouer avec la Base64
0
Rejoignez-nous