Code : Tout sélectionner
#Include <Array.au3>
#Include <Misc.au3>
Global $_aTEXT2PHONE[33][3] = [ _
[" ", 1, 1], _ ; La lettre, la touche, le nombre de répétition de la touche
["a", 2, 1], _
["b", 2, 2], _
["c", 2, 3], _
["d", 3, 1], _
["e", 3, 2], _
["f", 3, 3], _
["é", 3, 4], _
["è", 3, 5], _
["ê", 3, 6], _
["g", 4, 1], _
["h", 4, 2], _
["i", 4, 3], _
["j", 5, 1], _
["k", 5, 2], _
["l", 5, 3], _
["m", 6, 1], _
["n", 6, 2], _
["o", 6, 3], _
["p", 7, 1], _
["q", 7, 2], _
["r", 7, 3], _
["s", 7, 4], _
["t", 7, 1], _
["u", 7, 2], _
["v", 7, 3], _
["w", 9, 1], _
["x", 9, 2], _
["y", 9, 3], _
["z", 9, 4], _
["*", "*", 1], _
["+", "*", 2], _
["#", "#", 1]]
_ArrayDisplay($_aTEXT2PHONE)
Func _Text2Phone($Text)
Local $return = ""
$Text = StringSplit($Text, "")
For $i = 1 To $Text[0]
Local $Index = _ArraySearch($_aTEXT2PHONE, $Text[$i], 0, 0, 0, 0, 1, 0)
ConsoleWrite($Text[$i] & "=>" & $Index & @LF)
If $Index > -1 Then
$return &= $_aTEXT2PHONE[$Index][1] & "(" & $_aTEXT2PHONE[$Index][2] & ")"
Else
$return &= $Text[$i]
EndIf
Next
Return $return
EndFunc
;; Exemples 1
Local $s = "Bonjour Mme # + * la Marquise"
Local $r = _Text2Phone($s)
ConsoleWrite($s & "=>" & $r & @LF)