Français
Anwendungen

Reguläre Ausdrücke testen

 

Nico
Madysa
allô, liebe Community!

Anbei un kleines Programme, avec dem on vite avec regulären Ausdrücken herumexperimentieren peux.
dans dem champ pour qui Ausdrücke peux on aussi gewohnt alle Escape-Sequenzen benutzen; si on alors "\n" écrit, wird ca aussi comme Zeilenumbruch interpretiert.

Anbei un léger abweichender Code; dans dem Code habe je cela Zeugs entfernt, avec dem je sur Changements qui Fenstergröße reagiere, weil cela sur Subclassing et NProcs fonctionne et pour une kleinen Schnipsel comment cette viel trop large führt.

Télécharger
KompilierenMarqueSéparation
'Sorgt dafür, dass man in muster& auch Escapesequenzen benutzen kann.

proc EscapeBS

    parameters text$
    text$ = Translate$(text$,"\\z","\z")
    text$ = Translate$(text$,"\\a","\a")
    text$ = Translate$(text$,"\\b","\b")
    text$ = Translate$(text$,"\\t","\t")
    text$ = Translate$(text$,"\\f","\f")
    text$ = Translate$(text$,"\\r","\r")
    text$ = Translate$(text$,"\\n","\n")
    text$ = Translate$(text$,"\\q","\q")

    whileloop 0,255

        text$ = Translate$(text$,"\\x"+upper$(Hex$(&loop \ 16)+Hex$(&loop mod 16)),Chr$(&loop))

    EndWhile

    return Translate$(text$,"\\\\","\\")

endproc

'Aktualisiert den Titel

proc BuildTitle

    if GetText$(muster&) <> ""

        WindowTitle "RegEx-Tester: %MatchPos=" + str$(%MatchPos) + "; %MatchLen=" + str$(%MatchLen)

    else

        WindowTitle "RegEx-Tester: Kein Ausdruck!"

    endif

endproc

WindowTitle "RegEx-Tester"
cls
'Error-Level versetzt, weil sonst ständig Warnungen über
'Fehler im RegEx kommen
Set("ErrorLevel",0)
Cls External("User32","GetSysColor",15)
var Input& = Create("MultiEdit",%Hwnd,"Eingabe",0,0,width(%hWnd)\2,height(%hWnd)-20)
var Output& = Create("MultiEdit",%Hwnd,"Ausgabe",width(%hWnd)\2,0,width(%hWnd)\2,height(%hWnd)-20)
var muster& = Create("Edit",%Hwnd,"RegEx-Muster",0,height(%hWnd)-20,width(%hWnd),20)

whilenot Iskey(27)

    waitinput

    ifnot GetFocus(Output&)

        if GetText$(muster&) <> ""

            SetText Output&,Match$(EscapeBS(GetText$(muster&)),GetText$(input&))

        endif

        BuildTitle

    endif

wend
ass=s4 href='./../../function-references/XProfan/end/'>end

Anmerkungen et Korrekturen sommes, comment toujours, willkommen.

1.381 kB
Version:1
Kurzbeschreibung: Programme zum Überprüfen de regulären Ausdrücken
Hochgeladen:01.03.2012
Downloadcounter215
Download
 
01.03.2012  
 



je crois si Du dans qui hWnd-wProc chez wm_eraseBkGnd 1 zurückgibst (return 1) ensuite flickerts dans Deinem Beispiel pas beim Skalieren. ^ ^
 
02.03.2012  
 




Nico
Madysa
cette spezifische Schnipsel ist très stark de deinen Ratschlägen inspiriert et je gebe chez WM_ERASEBKGND bereits 1 zurück.

qui Subclassproc sieht so aus:
KompilierenMarqueSéparation
nproc hWnd.Sub

    parameters wnd&,msg&,wParam&,lParam&
    var ud& = GetWindowLong(wnd&,gwl_userData)

    if msg& = WM_WINDOWPOSCHANGING

        ifnot Long(lParam&,24) & 1'Beachtet SWP_NOSIZE

            var b& = dim(16)
            GetClientRect(%hWnd,b&)
            var a& = BeginDeferWindowPos(3)
            a& = DeferWindowPos(a&,Long(ud&,0),0,\
            0,0,Long(b&,8)\2,Long(b&,12)-20,SWP_NOACTIVATE|SWP_NOMOVE|SWP_NOZORDER)
            a& = DeferWindowPos(a&,Long(ud&,4),0,\
            Long(b&,8)\2,0,Long(b&,8)\2,Long(b&,12)-20,SWP_NOACTIVATE|SWP_NOZORDER)
            a& = DeferWindowPos(a&,Long(ud&,8),0,\
            0,Long(b&,12)-20,Long(b&,8),20,SWP_NOACTIVATE|SWP_NOZORDER)
            EndDeferWindowPos(a&)
            Dispose(b&)

        endif

        return 0

    elseif msg& = WM_GETMINMAXINFO

        Long lParam&,24 = 320,240
        return 0

    elseif msg& = WM_ERASEBKGND

        return 1

    endif

    return CallWindowProc(Long(ud&,nsc_wndproc),wnd&,msg&,wParam&,lParam&)

endproc


Dass là Verbesserungspotential besteht, erwarte je geradezu.
 
02.03.2012  
 



Zur Anwendung


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

6.622 Views

Untitledvor 0 min.
H.Brill12.06.2024
Andre Rohland08.09.2018
PETER195618.07.2018
Peter Max Müller05.03.2017
plus...

Themeninformationen

cet Thema hat 2 participant:

Nico Madysa (2x)
iF (1x)


Admins  |  AGB  |  Anwendungen  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie