[..] Lire une zone de texte et inverser les lettres

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
xdavidx
Niveau 1
Niveau 1
Messages : 1
Enregistré le : sam. 23 août 2014 12:11
Status : Hors ligne

[..] Lire une zone de texte et inverser les lettres

#1

Message par xdavidx »

Bonjour,
J'aimerai bien lire une zone de texte dans une fenêtre et les recopier en inversant les lettres et chiffres; je m'explique
j'ai cette combinaison : 76E8910A12 , je dois avoir au final la première lettre + la dernière ainsi de suite ... [ 7261EA8091 ] et recopier mon résultat dans une autre zone de saisie.
Merci a vous.
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2127
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..]lire une zone de texte et inverser les lettres

#2

Message par TommyDDR »

Pour la lecture de texte vous avez moultes sujet qui en parlent.
Renverser les lettre d'une chaine de caractère, vous avez la réponse dans l'aide AutoIt, appuyez sur F1 et cherchez s'il vous plait.
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..]lire une zone de texte et inverser les lettres

#3

Message par jguinch »

Un truc comme ça ?
► Afficher le texte
Edit:
Mais bien sûr, comme dit Tommy, il faut éplucher la doc et essayer de comprendre comment procéder.
Dans mon cas, j'utilise une boucle qui va de 1 jusqu'à 5 (la moitié de la longueur de la chaîne). J'extrais ensuite les lettre 1 et 10, puis 2 et 9..
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..]lire une zone de texte et inverser les lettres

#4

Message par mikell »

Et si la longueur est un chiffre impair ? Image

Code : Tout sélectionner

$sString = "76E89510A12"
$sStringOut = ""

$tmp = $sString
While $tmp <> ""
    $sStringOut &= StringLeft($tmp, 1) & ((StringLen($tmp) = 1) ? "" : StringRight($tmp, 1))
    $tmp = StringTrimLeft(StringTrimRight($tmp, 1), 1)
Wend
MsgBox(0, "", $sString & " => =" & $sStringOut & "=")
 
@Tommy
Vu le bug de jguinch le bazar n'était pas d'une évidence folle ^^
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Lire une zone de texte et inverser les lettres

#5

Message par jguinch »

[mauvaise foi=ON]mikell, de quel bug tu parles ? :mrgreen:[mauvaise foi=OFF]
A vrai dire, j'y avais pensé...
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Lire une zone de texte et inverser les lettres

#6

Message par mikell »

Mais de celui-là évidemment
Avant d'éditer son post en douce, jguinch a écrit :

Code : Tout sélectionner

$sString = "76E89510A12"
$sStringOut = ""

For $i = 1 To StringLen($sString) / 2
    $sStringOut &= StringMid($sString, $i, 1) & StringMid($sString, StringLen($sString) - $i + 1, 1)
Next
MsgBox(0, "", $sString & " => " & $sStringOut)
:mrgreen:
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11818
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Lire une zone de texte et inverser les lettres

#7

Message par Tlem »

Bonsoir.
Comme sur ce forum la pratique n'est pas encore courante, je me permet juste de préciser que dans le code de mikell, il est fait usage de l'opérateur ternaire.

pour plus d'explications, c'est par ici : http://www.autoitscript.fr/wiki/Operateur_Ternaire
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Lire une zone de texte et inverser les lettres

#8

Message par mikell »

Exact Thierry, désolé j'ai oublié de préciser : Autoit 3.3.12.0+ (la dernière release) :oops:
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Répondre