Comme je ne suis pas encore tres doué pour les utiliser, j'ai commencé a developper un petit utilitaire qui permet de tester vos RegExp sans relancer votre code a chaque fois, ce qui peut prendre du temps car certaines sont tres ... recalcitrantes
Donc voila, vous mettez votre texte, et testez vos RegExp les resultats sont affichés automatiquement et directement dans un TreeView (RegExp avec Flag 4)
Il faudrait rajouter un combobox pour choisir le flag et adapter la reponse en fonction, mais pour l'instant ca me suffit.
Avis aux amateurs donc
Code : Tout sélectionner
#include <GUIConstantsEx.au3>
#Include <GuiTreeView.au3>
Opt("GUIResizeMode", 1)
Opt("GUIDataSeparatorChar", "|")
Opt("GUIOnEventMode", 1)
#Region ### START Koda GUI section ### Form=
$Form1_1 = GUICreate("Form1", 635, 445, 192, 124)
GUISetOnEvent($GUI_EVENT_CLOSE, "SpecialEvents")
GUISetOnEvent($GUI_EVENT_MINIMIZE, "SpecialEvents")
GUISetOnEvent($GUI_EVENT_RESTORE, "SpecialEvents")
$Entrez = GUICtrlCreateEdit("", 24, 48, 345, 305)
GUICtrlSetOnEvent(-1,"actualise")
GUICtrlSetData($Entrez, "<test>a</test><test>a</test><test>a</test>")
$Label1 = GUICtrlCreateLabel("Developer Tool For Regular Expressions", 16, 8, 599, 26)
GUICtrlSetFont($Label1, 14, 400, 0, "Neurochrome")
GUICtrlSetBkColor($Label1, 0x3399FF)
$Input1 = GUICtrlCreateInput("Input1", 112, 392, 497, 21)
$Label2 = GUICtrlCreateLabel("Expression Regulière:", 8, 392, 106, 17)
$List1 = GUICtrlCreateTreeView(376, 64, 249, 305,-1)
$Label3 = GUICtrlCreateLabel("Resultats", 456, 40, 88, 17)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
$input = ""
$input_old = ""
$flag = 4
While 1
Sleep(100)
$input = GuiCtrlRead($Input1)
If $input <> $input_old Then
$input_old = $input
_GUICtrlTreeView_DeleteAll($List1)
$array = StringRegExp(GuiCtrlRead($Entrez),$input,$flag)
If Ubound($array)-1 >30 Then
$max = 30
ToolTip("Trop De Resultat. La requete a été tronquée.")
Else
$max = Ubound($array)-1
EndIf
For $i = 0 to $max
Assign($i&"_",GUICtrlCreateTreeViewItem($i,$List1))
for $j = 0 to Ubound($array[$i]) - 1
$array2 = $array[$i]
GUICtrlCreateTreeViewItem($array2[$j],Eval($i&"_"))
Next
GuiCtrlSetState(Eval($i&"_"),$GUI_EXPAND)
Next
ControlClick(AutoItWinGetTitle(),"",$Input1)
EndIf
WEnd
Func actualise()
$input_old = ""
EndFunc
Func SpecialEvents()
Select
Case @GUI_CtrlId = $GUI_EVENT_CLOSE
;MsgBox(0, "Close Pressed", "ID=" & @GUI_CtrlId & " WinHandle=" & @GUI_WinHandle)
Exit
Case @GUI_CtrlId = $GUI_EVENT_MINIMIZE
;MsgBox(0, "Window Minimized", "ID=" & @GUI_CtrlId & " WinHandle=" & @GUI_WinHandle)
Case @GUI_CtrlId = $GUI_EVENT_RESTORE
;MsgBox(0, "Window Restored", "ID=" & @GUI_CtrlId & " WinHandle=" & @GUI_WinHandle)
EndSelect
EndFunc ;==>SpecialEvents