Easter-Egg Befehle im MPR Part IV - Text- und Stringbefehle

Moderator: MVogt

Post Reply
User avatar
Theo_Gottwald
Posts: 367
Joined: 03. Oct 2009, 08:57
Location: Herrenstr.11 * 76706 Dettenheim
Contact:

Easter-Egg Befehle im MPR Part IV - Text- und Stringbefehle

Post by Theo_Gottwald » 12. Feb 2017, 12:48

Letzte Woche habe ich mal alte Entwickler-Unterlagen nachgesehen von vor etlichen Jahren.
Und tatsächlich es gibt Befehle, die der MPR kann und die gar nicht in der Hilfe stehen.
Undokumentierte "Geheimbefehle".

Thema in Part IV: Text- und Stringbefehle.

**************
s_unwrap,unw
**************

"Unwrap" auf Deutsch "Auspacken".
Entfernt linke und rechte Klammer. Diese müssen angegeben werden.
Folgt ein weiterer Parameter "a" oder "a", dann wird sichergestellt, dass an beiden Seiten jeweils alle Klammern entfernt werden.
Das Ergebnis wird als String zurückgegeben.

Code: Select all

GRN\s_unwrap|$$STR|()>$$RES
GRN\s_unwrap|$$STR|{}>$$RES
GRN\s_unwrap|$$STR|<>>$$RES
**************
s_wrap,unw
**************

"wrap" auf Deutsch "Einpacken".
Fügt linke und rechte Klammer zu einem String hinzu. Diese müssen angegeben werden.
Folgt ein weiterer Parameter "n" oder "no doubles", dann wird sichergestellt, dass an beiden Seiten jeweils nur eine Klammer ist.
In diesem Fall werden evtl. bereits vorhandene Einklammerungen entfernt, bevor diese Klammer hinzugefügt wird.
Das Ergebnis wird als String zurückgegeben.

Code: Select all

GRN\s_wrap|$$STR|()>$$RES
GRN\s_wrap|$$STR|{}|no doubles>$$RES
GRN\s_wrap|$$STR|<>|n>$$RES
**************
s_replace_word
**************

Word-Replace Funktion. Ersetzt nur ganze Wörter (abgetrennt mit Leerzeichen), keine Wörter in Wörtern.
Falls der Zusatz "colon" als 4. Parameter gegeben wurde, werden Wörter innerhalb von " " (Gänsefüsschen / ASC 34) ignoriert.

Beispiele:

Code: Select all

VAR\$$STR=Halleluja in der Halle. Er rief "Halleluja in der Halle".
GRN\s_replace_word|$$STR|Halle|Raum|colon
GRN\s_replace_word|$$STR|Halle|Raum
' Ergebnis in $v1$
GRN\s_replace_word|$$STR|Halle|Raum|colon>$$RES
GRN\s_replace_word|$$STR|Halle|Raum>$$RES
' Ergebnis in $$RES
****************************
s_no_case_instr
****************************

Diese Funktion sucht eine Zeichenkette in einer größeren Zeichenkette. Dabei wird Groß-/Kleinschreibung ignoriert.
Es gibt die Möglichkeit, die Suchrichtung durch Angabe von "back" als drittem Parameter umzukehren.
In einem vierten Parameter kann eine Startposition angegeben werden.

Beispiele:

Code: Select all

' Diese beiden sind identisch in der Wirkung, Ergebnis jeweils in $v1$
GRN\s_no_case_instr|$$STR|findme|f|1
GRN\s_no_case_instr|$$STR|findme
' Ergebnise hier in Variable
GRN\s_no_case_instr|$$STR|findme|back|5>$$RES
GRN\s_no_case_instr|$$STR|findme|forward|88>$$RES
****************************
s_equalcase_replace
****************************

Diese Funktion ersetzt das erste oder alle (Parameter 5) Vorkommen von (Parameter 2) in der Zeichenkette (Parameter 1) ab Position (Parameter 4) durch (Parameter 3).
Dabei spielt Groß- und Kleinschreibung keine Rolle. Die originale Groß- und Kleinschreibung der Angaben wird in dem Ersetzungsvorgang trotzdem beibehalten.
Die Angaben der Zeichenketten geschehen wie folgt:

Code: Select all

GRN\s_equalcase_replace|(String, in dem ersetzt werden soll)|(String, der ersetzt werden soll)|(String, der ersatzweise eingefügt wird)[|optional Startposition][|optional all]
Beispiele:

Code: Select all

VAR\$$STR=Hallo Peter.
VAR\$$IST=Peter
VAR\$$SOL=Franz
GRN\s_equalcase_replace|$$STR|$$IST|$$SOL>$$TAR
GRN\s_equalcase_replace|$$STR|$$IST|$$SOL|1|all>$$TAR
GRN\s_equalcase_replace|$$STR|$$IST|$$SOL|5>$$TAR
GRN\s_equalcase_replace|$$STR|$$IST|$$SOL|15|all
' Im letzteren Fall ist das Ergebnis in $v1$, in den anderen Beispielen ist es in der Zielvariablen $$TAR.
****************************
s_case_sensitive_replace
****************************

Diese Funktion ersetzt das erste oder alle (Parameter 5) Vorkommen von (Parameter 2) in der Zeichenkette (Parameter 1) ab Position (Parameter 4) durch (Parameter 3).
Dabei werden Groß- und Kleinschreibung beachtet. Die originale Groß- und Kleinschreibung der Angaben wird in dem Ersetzungsvorgang stets beibehalten.
Die Angaben der Zeichenketten geschehen wie folgt:
GRN\s_case_sensitive_replace|(String, in dem ersetzt werden soll)|(String, der ersetzt werden soll)|(String, der ersatzweise eingefügt wird)[|optional all]

Beispiele:

Code: Select all

VAR\$$STR=Hallo Peter.
VAR\$$IST=Peter
VAR\$$SOL=Franz
GRN\s_case_sensitive_replace|$$STR|$$IST|$$SOL>$$TAR
GRN\s_case_sensitive_replace|$$STR|$$IST|$$SOL|all>$$TAR
GRN\s_case_sensitive_replace|$$STR|$$IST|$$SOL>$$TAR
GRN\s_case_sensitive_replace|$$STR|$$IST|$$SOL|all
' Im letzteren Fall ist das Ergebnis in $v1$, in den anderen Beispielen ist es in der Zielvariablen $$TAR.
Aber noch Mal der Hinweis: Die Befehls stehe nicht in der Hilfe und sind derzeit offiziell nicht vorhanden obwohl sie jeder MPR Nutzer sofort nutzen kann. Also dazu ist kein Update nötig die Befehle sind da schon drin und zwar seit Jahren.

Post Reply

Return to “Package Robot”

Who is online

Users browsing this forum: No registered users and 3 guests