STRX.C2 V2.3 - Hilfe


Beschreibung

Einfügen als Gemeinsames Modul

Funktionen:

getchar()
comp()
comsel()
InStr()
Ucase()
Lcase()

left()
right()
mid()
paste()
cut()
getNum()
ReplaceChar()


Beschreibung   Nach oben

Das Modul strx.c2 beinhaltet mehrere nützliche Funktionen zum Bearbeiten
von Stringvariablen.

Einfügen als Gemeinsames Modul   Nach oben

Die Datei strx.c2 in das Verzeichnis .\CControl2\UserLib der IDE
kopieren und ggf. in der Datei modules.txt die Zeile strx.c2 einfügen.


Funktionen:

getchar()   Nach oben

    function getchar(byte s[], int position) returns byte

Mit der Funktion getchar() wird ein einzelnes Zeichen von der
angegebenen Position des übergebenen Strings als Bytewert
zurückgegeben.

s[] Stringvariable
position Zeichenposition 0 bis 29


Strings vergleichen: comp()   Nach oben

    function comp(byte s1[], byte s2[]) returns int

Mit comp() werden zwei Strings miteinander verglichen, ob diese
identisch sind. Es wird True(-1) zurückgegeben, wenn die Strings identisch sind,
andernfalls False(0).

s1[], s2[] zu vergleichende Strings


Teilstrings vergleichen: compsel()   Nach oben

    function compsel(byte s1[], byte s2[], byte s2len, byte s1pos) returns int

Mit compsel() werden zwei Teilstrings miteinander verglichen, ob diese
identisch sind. Es wird True(-1) zurückgegeben, wenn die Strings identisch sind,
andernfalls False(0).
Mit s2len wird die Anzahl der zu vergleichenden Zeichen bestimmt, und mit 
s1pos die Startposition von s1, ab der verglichen werden soll.

s1[] Zu vergleichender QuellString
s2[] der zu suchende String
s2len Anzahl der Zeichen in String2 bzw. Anzahl zu
vergleichender Zeichen (0-29)
s1pos Startposition in String1, ab der verglichen werden soll (0-29)

Beispiel:
a="Test";
b="Ein Test zu compsel().";
x=strx.compsel(b,a,4,4); //Dieser Vergleich liefert True zurück
y=strx.compsel(b,a,4,1); //Dieser Vergleich liefert False zurück


Zeichenfolge suchen: InStr
()   Nach oben

    function InStr(byte start, byte s1[], byte s2[], byte s1len, byte s2len) returns int

Mit der Funktion InStr() kann nach der Position einer Zeichenfolge in einem String
gesucht werden. Es wird dabei die Startposition des ersten Vorkommens der zu
suchenden Zeichenfolge zurückgegeben. Ist s2 in s1 nicht vorhanden, so wird -1 zurückgegeben.
Diese Funktion funktionier wie die vergleichbare Funktion InStr() in Visual Basic.
start Startposition in s1, ab der gesucht werden soll (0-29)
s1[] Zu durchsuchender String
s2[] Zu suchende Zeichenfolge
s1len Anzahl zu durchsuchender Zeichen in s1 (0-29)
s2len Anzahl der Zeichen in s2 bzw. Anzahl zu suchender
Zeichen von s2 (0-29)

String in Groß-oder Kleinbuchstaben umwandeln: Ucase() & Lcase()   Nach oben

    function Ucase(byte s[], byte start, byte len)
    function Lcase(byte s[], byte start, byte len)

Mit diesen Funktion werden die Zeichen des übergebenen Strings
in Großbuchstaben (Ucase()) bzw. in Kleinbuchstaben(Lcase()) umgewandelt.
Es kann dabei die Startposition und die Anzahl der Zeichen übergeben werden,
wenn nur ein Teil der Zeichen des angegebenen Strings gewandelt werden soll.
Sollen generell alle Zeichen gewandelt werden, so kann für start der Wert 0 und
für len der Wert 30 übergeben werden.
Es werden hierbei nur alle Buchstaben berücksichtigt (incl. Umlaute).
Sonderzeichen und Zahlen bleiben unverändert.
s[] Zu wandelnder String
start Startposition, ab der gewandelt werden soll (0-29)
len Anzahl zu wandelnder Zeichen (1-30)

Teilstring kopieren: left()   Nach oben

    function left(byte s1[], byte s2[], byte len)

Die Funktion left() gibt die Anzahl len Zeichen ab dem ersten(linken) Zeichen
von s1 in s2 zurück.
Die Funktion ist mit derVB-Funktion Left() vergleichbar.

s1[] Quellstring
s2[] Zielstring
len Anzahl der zurückzugebenden Zeichen (1-30)

Beispiel:
a="Das ist ein Test";
strx.left(a,b,3); //Hier wird in b "Das" zurückgegeben

Teilstring kopieren: right()   Nach oben

    function right(byte s1[], byte s2[], byte len)

Die Funktion right() gibt die Anzahl len Zeichen von der rechten Seite(dem Ende)
von s1 in s2 zurück.
Die Funktion ist mit derVB-Funktion Right() vergleichbar.

s1[] Quellstring
s2[] Zielstring
len Anzahl der zurückzugebenden Zeichen (1-30)

Beispiel:
a="Das ist ein Test";
strx.right(a,b,4); //Hier wird in b "Test" zurückgegeben


Teilstring kopieren: mid()
   Nach oben

    function mid(byte s1[], byte s2[], byte start, byte len)

Die Funktion mid() gibt die Anzahl len Zeichen ab der Position start von s1 in s2 zurück.

s1[] Quellstring
s2[] Zielstring
start Startposition (0-29)
len Anzahl der zurückzugebenden Zeichen (1-30)

Beispiel:
a="Das ist ein Test";
strx.mid(a,b,8,3); //Hier wird in b "ein" zurückgegeben


Zeichenfolge einfügen: paste()   Nach oben

    function paste(byte s1[], byte s2[], byte start, byte len)

Die Funktion paste() fügt len Zeichen von s1 in s2 ab Position start in s2 ein.

s1[] Quellstring
s2[] Zielstring
start Startposition in s2 (0-29)
len Anzahl der einzufügenden Zeichen von s1(1-30)

Beispiel:
a="e C-Control II";
b="Das ist ein Test";
strx.paste(a,b,11,14);//Hier wird aus "Das ist ein Test" der String
                      // "Das ist eine C-Control II"



Zeichenfolge ausschneiden: cut()   Nach oben

    function cut(byte s1[], byte s2[], byte start, byte len)

Die Funktion cut() schneidet ab Position start aus s1 len Zeichen aus und
speichert diese in s2.

s1[] Quellstring
s2[] Zielstring
start Startposition in s2 (0-29)
len Anzahl der einzufügenden Zeichen von s1 (1-30)

Beispiel:
a="Das ist ein guter Controller";
strx.cut(a,b,12,6); //Hier wird aus "Das ist ein guter Controller"
                    //der String "Das ist ein Controller"

                    //In b wird "guter " zurückgegeben



String in Zahl umwandeln: getNum()   Nach oben

    function getNum(byte s[]) returns long

Mit Hilfe der Funktion getNum() können Zeichenfolgen, die eine Zahl darstellen,
als solche umgewandelt werden. Der Zahlenbereich kann bis Long-Integer und
sowohl im positiven als auch im negativen Bereich sein.
Im übergebenen String dürfen sich nur Ziffern und das Zeichen "-"(als erstes Zeichen) befinden.
Befindet sich ein anderes Zeichen im String, so wird 0x8000 für "keine Zahl" zurückgegeben.
Das Ergebnis kann in Byte-, Integer-und Long-Variablen gespeichert werden.

s[] String mit Zahlenwert



Zeichen ersetzen: ReplaceChar()
   Nach oben

    function ReplaceChar(byte start, byte s[], byte slen, byte FindChar, byte NewChar) returns int

Die Funktion ReplaceChar() ersetzt im String s ab Position start len Zeichen
alle Zeichen mit dem ASCII-Code FindChar mit dem Zeichen NewChar.

start Startposition in s (0-29)
s[] Zu bearbeitender String
slen Anzahl zu bearbeitender Zeichen ab start (1-30)
FindChar Zu ersetzendes Zeichen
NewChar Neues Zeichen



Autor: André Helbig   Mail: andre.h@cc2net.de    Erstellt: 6.10.2003 ©www.CC2Net.de