Español
Fuente/ Codesnippets

Automatisch Entfernen Características überflüssige

 
- Página 1 -



Jörg
Sellmeyer
¡Hola,
Yo habe veces unos pocos Regexpressions zusammengefummelt, con denen Características como Sub, Mul u.s.w automáticamente de el Ver código fuente lejos voluntad puede.
Hiermit puede no verschachtelte Funktonen ersetzt y ser auch O y AND bleiben unbehandelt.
Trotzdem kann lo una una Menge Trabajos puntuales.
KompilierenMarcaSeparación
Declare Term$[10,2],Wert$[5]
Declare Edit&,Text&,hFont&,btnLaden&,btnStarten&,btnSpeichern&,Liste&,ListeFertig&
Term$[0,0] = ([Ss][Uu][Bb])+ ?~(
Term$[1,0] = (([Aa][Dd][Dd])+ ?~()
Term$[2,0] = (([Aa][Dd][Dd]~$)+ ?~()
Term$[3,0] = (([Mm][Uu][Ll])+ ?~()
Term$[4,0] = ([Dd][Ii][Vv]+ ?~()
Term$[5,0] = ([Dd][Ii][Vv]&+ ?~()
Term$[6,0] = ([Aa][Nn][Nn]+ ?~()Wem was dazu einfällt...
Term$[7,0] = ([Oo][Rr]+ ?~()
Term$[8,0] = ([Mm][Oo][Vv][Ee][Ll][Ii][Ss][Tt][Tt][Oo]+([Ll][Ii][Ss][Tt]|[Cc][Hh][Oo][Ii][Cc][Ee]|[Ee][Dd][Ii][Tt]) ?~()
Term$[9,0] = (([Ss][Ee][Tt])([Aa][Uu][Tt][Oo][Pp][Aa][Ii][Nn][Tt]|
[Dd][Ee][Cc][Ii][Mm][Aa][Ll][Ss]|
[Nn][Uu][Mm][Ww][Ii][Dd][Tt][Hh]|
[Cc][Hh][Aa][Rr][Ss][Ee][Tt]|
[Ee][Rr][Rr][Oo][Rr][Ll][Ee][Vv][Ee][Ll]|
[Ff][Ii][Ll][Ee][Mm][Oo][Dd][Ee]|
[Tt][Rr][Uu][Ee][Cc][Oo][Ll][Oo][Rr]|
[Ss][Tt][Rr][Ww][Ii][Dd][Tt][Hh])) [0-9]+
Term$[0,1] = -
Term$[1,1] = +
Term$[2,1] = +
Term$[3,1] = *
Term$[4,1] = /
Term$[5,1] = \
Term$[6,1] = &
Term$[7,1] = |
Term$[8,1] = MoveListToHandle(
Wert$[0] = ( ?[0-9]+(~.[0-9]+)? ?)Zahl
Wert$[1] =  ( ?[!%&]?[A-Za-z0-9]+[!%&]? ?)numerische Variable; Hex-, Binär- oder Octalzahl; Konstante oder Systemvariable
Wert$[2] = ( ?q{1}.*q{1} ?)String
Wert$[3] = ( ?([A-Za-z0-9ÄÖÜäöü~-_])+~$+ ?)Stringvariable oder Konstante
Wert$[4] = ( ?~$+[A-Za-z0-9ÄÖÜäöü~-_]+ ?)Stringkonstante

Proc Bearbeiten

    Parameters Zeile$,hEdit&,hText&
    Declare Funktion$,RegExpVar$,FunktionTransformiert$
    Case Zeile$ > :SetText hEdit&,Zeile$

    { Sub:

        RegExpVar$ = Term$[0,0] + ( + Wert$[0] + | + Wert$[1] + )  + , + ( + Wert$[0] + | + Wert$[1] + ) + ~)

        While Match$(RegExpVar$,Zeile$) >

            Funktion$ = Match$(RegExpVar$,Zeile$)
            Set(RegEx,1)
            FunktionTransformiert$ = Translate$(Funktion$,Term$[0,0],()
            FunktionTransformiert$ = Translate$(FunktionTransformiert$,,,Term$[0,1])
            Set(RegEx,0)
            Zeile$ = Translate$(Zeile$,Funktion$,FunktionTransformiert$)
            Case Zeile$ > :SetText hText&,Zeile$

        Wend

    }

    { Add:

        RegExpVar$ = Term$[1,0] + ( + Wert$[0] + | + Wert$[1] + )  + , + ( + Wert$[0] + | + Wert$[1] + ) + ~)

        While Match$(RegExpVar$,Zeile$) >

            Funktion$ = Match$(RegExpVar$,Zeile$)
            Set(RegEx,1)
            FunktionTransformiert$ = Translate$(Funktion$,Term$[1,0],()
            FunktionTransformiert$ = Translate$(FunktionTransformiert$,,,Term$[1,1])
            Set(RegEx,0)
            Zeile$ = Translate$(Zeile$,Funktion$,FunktionTransformiert$)
            Case Zeile$ > :SetText hText&,Zeile$

        Wend

    }

    {Add$:

        RegExpVar$ = Term$[2,0] + ( + Wert$[2] + | + Wert$[3] + | + Wert$[4] + ),( + Wert$[2] + | + Wert$[3] + | + Wert$[4] + ) + ~)

        While Match$(RegExpVar$,Zeile$) >

            Funktion$ = Match$(RegExpVar$,Zeile$)
            Set(RegEx,1)
            FunktionTransformiert$ = Translate$(Funktion$,Term$[2,0],()
            FunktionTransformiert$ = Translate$(FunktionTransformiert$,,,Term$[2,1])
            Set(RegEx,0)
            Zeile$ = Translate$(Zeile$,Funktion$,FunktionTransformiert$)
            Case Zeile$ > :SetText hText&,Zeile$

        Wend

    }

    {Mul:

        RegExpVar$ = Term$[3,0] + ( + Wert$[0] + | + Wert$[1] + )  + , + ( + Wert$[0] + | + Wert$[1] + ) + ~)

        While Match$(RegExpVar$,Zeile$) >

            Funktion$ = Match$(RegExpVar$,Zeile$)
            Set(RegEx,1)
            FunktionTransformiert$ = Translate$(Funktion$,Term$[3,0],()
            FunktionTransformiert$ = Translate$(FunktionTransformiert$,,,Term$[3,1])
            Set(RegEx,0)
            Zeile$ = Translate$(Zeile$,Funktion$,FunktionTransformiert$)
            Case Zeile$ > :SetText hText&,Zeile$

        Wend

    }

    {Div

        RegExpVar$ = Term$[4,0] + ( + Wert$[0] + | + Wert$[1] + )  + , + ( + Wert$[0] + | + Wert$[1] + ) + ~)

        While Match$(RegExpVar$,Zeile$) >

            Funktion$ = Match$(RegExpVar$,Zeile$)
            Set(RegEx,1)
            FunktionTransformiert$ = Translate$(Funktion$,Term$[4,0],()
            FunktionTransformiert$ = Translate$(FunktionTransformiert$,,,Term$[4,1])
            Set(RegEx,0)
            Zeile$ = Translate$(Zeile$,Funktion$,FunktionTransformiert$)
            Case Zeile$ > :SetText hText&,Zeile$

        Wend

    }

    {Div&

        RegExpVar$ = Term$[5,0] + ( + Wert$[0] + | + Wert$[1] + )  + , + ( + Wert$[0] + | + Wert$[1] + ) + ~)

        While Match$(RegExpVar$,Zeile$) >

            Funktion$ = Match$(RegExpVar$,Zeile$)
            Set(RegEx,1)
            FunktionTransformiert$ = Translate$(Funktion$,Term$[5,0],()
            FunktionTransformiert$ = Translate$(FunktionTransformiert$,,,Term$[5,1])
            Set(RegEx,0)
            Zeile$ = Translate$(Zeile$,Funktion$,FunktionTransformiert$)
            Case Zeile$ > :SetText hText&,Zeile$

        Wend

    }

    {MoveListTo

        RegExpVar$ = Term$[8,0]

        While Match$(RegExpVar$,Zeile$) >

            Funktion$ = Match$(RegExpVar$,Zeile$)
            FunktionTransformiert$ = Translate$(Funktion$,Funktion$,Term$[8,1])
            Set(RegEx,0)
            Zeile$ = Translate$(Zeile$,Funktion$,FunktionTransformiert$)
            Case Zeile$ > :SetText hText&,Zeile$

        Wend

    }

    {Set...

        RegExpVar$ = Term$[9,0]
        Declare Zahl$

        While Match$(RegExpVar$,Zeile$) >

            Funktion$ = Match$(RegExpVar$,Zeile$)
            Zahl$ = SubStr$(Funktion$,2, )
            FunktionTransformiert$ = Translate$(Funktion$,Zahl$,q, + Zahl$ + ))
            FunktionTransformiert$ = Translate$(FunktionTransformiert$,Left$(FunktionTransformiert$,3),Left$(FunktionTransformiert$,3) + (q)
            Zeile$ = Translate$(Zeile$,Funktion$,FunktionTransformiert$)
            Case Zeile$ > :SetText hText&,Zeile$

        Wend

    }

    Return Zeile$

EndProc

Proc DateiLaden

    Declare Datei$,Zeile$
    Datei$=LoadFile$(Profan-Code laden,Profan-Code (*.prf)|*.prf|
    + Include-Datei (*.inc)|*.inc)

    If Datei$ >

        ClearList Liste&
        Assign #1,Datei$
        Reset #1

        WhileNot @Eof(#1)

            Input #1,Zeile$
            AddString(Liste&, Zeile$)

        Wend

        Close #1
        WindowTitle Datei$ +  geladen

    EndIf

EndProc

Proc DateiBearbeiten

    If GetCount(Liste&) > 0

        Declare Zeile$,ZeileNeu$
        ClearList ListeFertig&

        WhileLoop 0,GetCount(Liste&)

            locate 12,0
            Zeile$ = GetString$(Liste&,&Loop)
            ZeileNeu$ = Bearbeiten(Zeile$,Edit&,Text&)
            AddString(ListeFertig&,ZeileNeu$)

            If ZeileNeu$ <> Zeile$

                AddString Str$(&Loop) +   + Trim$(Zeile$)
                AddString Str$(&Loop) +   + Trim$(ZeileNeu$)

            EndIf

        Wend

        ListBox$(Änderungen,2)
        WindowTitle Translate$(GetText$(%hwnd),geladen,bearbeitet)

    EndIf

EndProc

Proc DateiSpeichern

    If GetCount(ListeFertig&) > 0

        Declare Datei$
        Datei$ = SaveFile$(Datei speichern,Profan-Code (*.prf)|*.prf|
        + Include-Datei (*.inc)|*.inc|
        + Andere (*.*)|*.*))

        If Datei$ >

            Assign #1,Datei$
            ReWrite #1

            WhileLoop 0,GetCount(ListeFertig&)

                Print #1,GetString$(ListeFertig&,&Loop)

            Wend

            Close #1
            WindowTitle Translate$(GetText$(%hwnd),bearbeitet,gespeichert)

        EndIf

    EndIf

EndProc

Window 1,1 - 1100,400
hFont& = Create(Font,MS Sans Serif,14,0,0,0,0)
SetDialogFont hFont&
Edit& = Create(Edit,%hwnd,,0,0,Width(%hwnd),24)
Text& = Create(Text,%hwnd,,0,50,Width(%hwnd),24)
btnLaden& = Create(Button,%hwnd,laden,10,100,60,24)
btnStarten& = Create(Button,%hwnd,starten,80,100,60,24)
btnSpeichern& = Create(Button,%hwnd,speichern,150,100,60,24)
Liste&=Create(List,0)
ListeFertig&=Create(List,0)

While 1

    Waitinput

    If Clicked(btnLaden&)

        ChDir C:/ProfanTools
        DateiLaden

    ElseIf Clicked(btnStarten&)

        DateiBearbeiten

    ElseIf Clicked(btnSpeichern&)

        DateiSpeichern

    EndIf

Wend

DeleteObject hFont&
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
10.10.2006  
 



 
- Página 2 -



Peter
Max
Müller
nabend,
Como du media.
Dachte sólo wegen el Xprofan Ayuda
WRITEINI SPIEL.INI,MeinProgramm, HIGHSCORE=@Str$(HighScore&)

Also sin Klammern.

Saludo

@IF : Mein Avatar Bild war frei de rechten dritter y ha auch no gegen el guten
Sitten verstoßen y trotzdem es otra vez gelöscht worden.Mittlerweile ya el 4te.
Why?
 
XProfan X3, X4ß, Win 10.1
12.10.2006  
 




Jörg
Sellmeyer
Peter Max Müller
Howdy,
Weil Yo sicher bin el du deinen Code así hinkriegst el él alles ordnungsgemäß umwandelt Yo me pensamiento el Yo el con el dbase Sachen veces erwähne.


Gracias!

Peter Max Müller
Nochwas:
KompilierenMarcaSeparación
WriteIni (add$(PrgDir$,Inis$)),VERG,Anzahl = verganzahl$
>

se umgewandelt a:
KompilierenMarcaSeparación
WriteIni ((PrgDir$ + Inis$)),VERG,Anzahl = verganzahl$
>

Besser wäre glaube Yo:
KompilierenMarcaSeparación
WriteIni PrgDir$ + Inis$,VERG,Anzahl = verganzahl$
>

Also sin Klammern.Oder.

Tschüßikowski


Das wäre definitiv no mejor, como Usted sí el erste Klammerpaar ya incluso en el Code posición hast y yo el real Code natürlich möglichst unangetastet lasse!
El umgewandelten Características lasse Yo en Klammern, como sonst Problemas con verschachtelten Características auftreten puede/voluntad.
En Cuerdas podría al evtl. weglassen aber el Risiko, daß entonces qué schiefgeht es größer como el lo entstandene Nutzen.
Como IF ya sagt: más bien unos pocos Klammern zuviel, como zuwenig.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
12.10.2006  
 




Peter
Max
Müller
Jetzt aber

Usted hast Recht. Einleitende Klammern kommen de me y debería demnach no angetastet voluntad.Posesiones Yo no en él geachtet.
Aber el Klammern después de el umwandeln son definitiv a viel.
Yo weiß , Yo weiß: Lieber a viel como a wenig. Sagt el Finanzamt De todos modos.
KompilierenMarcaSeparación
WriteIni (add$(PrgDir$,Inis$)),DRUCK,Anzahl = Str$(Seizal%)
>

después de
KompilierenMarcaSeparación
WriteIni ((PrgDir$ + Inis$)),DRUCK,Anzahl = Str$(Seizal%)
>
 
XProfan X3, X4ß, Win 10.1
12.10.2006  
 





@IF : Mein Avatar Bild war frei de rechten dritter y ha auch no gegen el guten
Sitten verstoßen y trotzdem es otra vez gelöscht worden.Mittlerweile ya el 4te.
Why?


Yo debería en el LogFile schauen wer Su Ava deaktiviert ha - muss aber gestehen el Yo auch no 100%ig sicher war si se hierbei en algo Eigenes es. Lo war una Foto ne? Jedenfalls anscheinlich keins de Usted ?! - y ausgesehen ha lo auch no como si una eigener Schnappschuss war. Tal vez wurde lo simplemente sólo deshalb sicherheitshalber deaktiviert porque ebend no eindeutig war si tatsächlich rechtefrei es.

Yo muss auch zugeben el Yo bien heisse si más bien una Avatar mehr deaktiviert se, en lugar de tal vez eins a wenig. Kann wenigstens niemand grobe Verletzung el Sorgfaltspflicht nachsagen.
 
12.10.2006  
 




Jac
de
Lad
Bitte no hauen, pero yo hatte auch ya veces el Concepto. Yo habs veces fertiggestellt. Lo son todavía Problemas con Variables, el gleiche oder ähnliche Namen como Características haben (debería sólo wend betreffen) y incluso definierten Características, el ähnliche Namen haben (para Ejemplo Gosub()). Und con más Befehlen, el por : getrennt, voluntad, Todavía nix instalado. Aber como Testversion sits tal vez interessant...

6 kB
Hochgeladen:12.10.2006
Ladeanzahl81
Descargar
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
12.10.2006  
 




Jörg
Sellmeyer
So, ahora funktioniert el Línea auch. Außerdem son el meisten DB-Características/-befehle drin.
Wenn todavía qué fehlt: Bescheid sagen. Yo habe simplemente de el Ayuda para Profano 9 kopiert.

Neu es außerdem una Eingabefeld, en el einzelne Zeilen para Umwandeln eingefügt/-geschrieben voluntad puede.

Diese dBase-Begriffe voluntad ahora ersetzt. como Yo selber no nennenswerten Code con esta Características habe, podría Yo no allzusehr testen. Yo wäre por lo tanto froh encima Rückmeldungen dazu.

db(Appendblank|Browse|Close|Delete|Edit|Find|Get$|GetField$|GetMemo|Go|Index|Open|Pack|Put|PutField|
PutMemo|PutRec|Seek|Undelete|Use)

db(Create|CreateIndex)

Wend

CloseRW


Saludo
Jörg

Apéndice:
gerade todavía una Fehler expandido: dbCreate wurde no traducido. Jetzt gehts.

19 kB
Hochgeladen:13.10.2006
Ladeanzahl76
Descargar
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
13.10.2006  
 




Michael
Wodrich
dbgetfield$ fehlt todavía


Überflüssige Características automáticamente entfernen


überflüssig son ellos sí no, ellos haben se sólo una wenig geändert.

Schöne Grüße
Michael Wodrich

P.S.: lo fehlt todavía mehr.
Schau doch simplemente en Altlasten.inc / kombatibility.inc de. Dort findest Usted en efecto el Umsetzung. Der Code es frei - el una se schnelle Abhilfe en el (irgendwann) fehlenden Características ser - el otro se el Fortbestand y el leichte Pflege des Codes sichern.
Beides se gebraucht.
P.P.S.: ...wirklich rápidamente...
 
Programmieren, das spannendste Detektivspiel der Welt.
13.10.2006  
 




Michael
Wodrich
Bekomme Su Proggi no para Laufen. Exception Fehler y Abflug...
 
Programmieren, das spannendste Detektivspiel der Welt.
13.10.2006  
 




Jörg
Sellmeyer
Michael Wodrich
Bekomme Su Proggi no para Laufen. Exception Fehler y Abflug...


Oh... como kann Yo gar nichts a sagen Yo habgerade veces selber el letzte Versión heruntergeladen y ellos se ejecuta problemlos.
Schmiert el Programa porque ya beim Start de oder si versuchst, una Expediente a invitar oder a bearbeiten?
Teste doch otra vez. Tuve todavía una Fehler en el RegExp entdeckt. Wer kann porque ahnen, daß en esta Tiempo hier todavía alguien así aktiv es.

Saludo
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
13.10.2006  
 




Michael
Wodrich
Wieder nichts.
5 Buttons - links leeres Ventana - rechts listview
y después de dieser Anzeige entonces igual el Abflug.

Yo versuche veces una Bild anzuhängen, aber habe siempre pech así a una tag wo el quersumme ...

Kleine Pause, después de el Frühstück gehts más.

Schöne Grüße
Michael Wodrich

26 kB
Hochgeladen:13.10.2006
Ladeanzahl105
Descargar
 
Programmieren, das spannendste Detektivspiel der Welt.
13.10.2006  
 




Jörg
Sellmeyer
Yo podría mirdenken, woran lo liegt:
In el globalen Deklarationen es Term$[16,2]
Ändere el en Term$[20,2]. Yo habe nämlich ya 0-16 => 17 en Gebrauch. Erstaunlicherweise son en el me no Problemas.
In el neuen Versión istdas korrigiert.

Saludo
Jörg

19 kB
Hochgeladen:13.10.2006
Ladeanzahl101
Descargar
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
13.10.2006  
 



Hm tal vez stürzt deshalb el aktuelle Release (no el veröffentlichte) de mi Okrea auch de - tal vez liegts a el Arrays hmmm.
 
13.10.2006  
 




Zum Quelltext


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

43.525 Views

Untitledvor 0 min.
Walter16.02.2019
AndreasS27.11.2018
Jörg Sellmeyer14.05.2018
PETER195605.09.2015
Más...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie