Deutsch
Forum

Translate und RegEx

 

Jörg
Sellmeyer
Hallo,
Wie wäre es wenn Translate einen optionalen Parameter bekommt:
KompilierenMarkierenSeparieren
Translate$(Text$,Zeichen$,Ersatz$,RegEx%)

Wenn RegEx% 1 ist, funktioniert Translate$ so, wie ein vorher eingestelltes Set(RegEx,1).
Wenn RegEx% 0 ist, funktioniert Translate$ so, wie ein vorher eingestelltes Set(RegEx,0).
Ohne zusätzlichen Parameter hält Translate sich an den mit Set(RegEx,n%) eingestellten Wert.

Ich schlage das vor, weil im Programm oft zwischen beiden hin und her geschaltet werden muß und diese Version die Arbeit doch sehr erleichtern würde.

Damit kann man sich erst mal behelfen:
KompilierenMarkierenSeparieren
Proc TransReg$

    If %pcount = 3

        Parameters s$,s1$,s2$
        Return Translate$(s$,s1$,s2$)

    ElseIf %pcount = 4

        Parameters s$,s1$,s2$,rx%
        Declare ret$
        rx%=Set("RegEx",rx%)
        ret$=Translate$(s$,s1$,s2$)
        Set("RegEx",rx%)
        Return ret$

    EndIf

EndProc


Fest eingebaut wäre das bestimmt schneller.

Gruß
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
14.10.2006  
 




Nico
Madysa
Nunja, aber wenn du halt nicht nach regulären Asudrücken suchst, kannst du den gesuchten Text doch ganz normal eingeben, oder?
KompilierenMarkierenSeparieren
text$ = Translate$(text$,"Mein schönen tolles Käsebrot","Deine suppie Wurststulle)

würde mit Set(RegEx,1) und mit Set(RegEx,0) das selbe Ergebnis liefern, oder?
 
Nico Madysa
16.10.2006  
 




Jörg
Sellmeyer
[quote:7cca656b81=Nico Madysa]Nunja, aber wenn du halt nicht nach regulären Asudrücken suchst, kannst du den gesuchten Text doch ganz normal eingeben, oder?
KompilierenMarkierenSeparieren
text$ = Translate$(text$,"Mein schönen tolles Käsebrot","Deine suppie Wurststulle)

würde mit Set(RegEx,1) und mit Set(RegEx,0) das selbe Ergebnis liefern, oder?[/quote:7cca656b81]
Nur: Wenn Du vorher RegEx eingeschaltet hast funktionieren einige Sachen nicht mehr. Du darfst z.B. keine $ oder ~ im Suchstring haben.
Man muß also immer erst testen ob RegEx ein oder aus ist. Oder jedesmal darauf achten RegEx wieder auszuschalten. Was wieder zwei Zeilen Code mehr bedeutet, die mit einem 4 Parameter in Delphi-Geschwindigkeit abgearbeitet würden.

Gruß
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
16.10.2006  
 




Nico
Madysa
Und wie wärs so?
KompilierenMarkierenSeparieren
proc NewTranslate$

    parameters wort$ , such$ , ersatz$ , mod%
    declare status% , res$
    status% = Set("RegEx",mod%)
    res$ = Translate$(wort$,such$,ersatz$)
    Set("RegEx",status%)
    return res$

endproc

 
Nico Madysa
16.10.2006  
 




Jörg
Sellmeyer
Das ist ja genau das, was ich oben auch geschrieben habe, nur daß bei mir ein Translate mit 3 Parametern eben auch als normales Translate behandelt wird.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
16.10.2006  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

1.903 Betrachtungen

Unbenanntvor 0 min.
H.Brill07.12.2023
Walter05.06.2022
Sven Bader10.08.2021
Christof Neuß06.09.2018
Mehr...

Themeninformationen

Dieses Thema hat 2 Teilnehmer:

Jörg Sellmeyer (3x)
Nico Madysa (2x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie