String-Manipulation: Unterschied zwischen den Versionen

Aus Asprova Hilfe
Wechseln zu: Navigation, Suche
K (GK verschob die Seite String Vorgänge nach String-Manipulation)
(Überarbeitung und Ergänzung um neue Funktionen)
Zeile 1: Zeile 1:
{{DISPLAYTITLE:String Vorgänge}}
+
{{DISPLAYTITLE:String-Manipulation}}
 
<div align="right">Hilfe Nummer: 741510</div>
 
<div align="right">Hilfe Nummer: 741510</div>
<div align="right">[[Interne Funktionen|Interne Funktion]]</div>
+
<div align="right">[[Interne Funktionen]]</div>
<div align="right">[[Formeleditor|Formeldialog]]</div>
+
<div align="right">[[Formeleditor]]</div>
 
<hr>
 
<hr>
String-Operationen gestalten sich in Asprova wie folgt:
 
  
 +
Asprova stellt Ihnen die folgenden Funktionen zur Manipulation von Strings (Zeichenketten, Texten) zur Verfügung.
  
Find( str, strSearch )
+
== Find( str, strSearch ) ==
 
+
{| class="wikitable"
Argumente
+
|-
 
+
!rowspan="2"|Argumente
 
+
|''str''||Quellstring
{|
 
 
|-
 
|-
|   ||str||Quellstring|| 
+
|''strSearch''||Zu suchender String
 
|-
 
|-
||   ||strSearch||Gesuchter String
+
!Rückgabewert
 +
|colspan="2"|Sucht in ''strSearch'' nach ''str''. Wird ''str'' gefunden, so wird TRUE zurückgegeben, sonst FALSE.
 
|-
 
|-
|}
+
!rowspan="2"|Beispiele
 
+
|<code>Find('abcde','bc')</code>||TRUE
Rückgabewert
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||Findet strSearch durch str. Für den Fall, dass die Sucher erfolgreich war, wird WAHR ausgegeben, anderfalls FALSCH.||  
+
|<code>Find('abcde','xy')</code>||FALSE
 
|-
 
|-
 
|}
 
|}
  
Beispiel
+
== StrStr( str, strSearch ) ==
 
+
{| class="wikitable"
 
+
|-
{|
+
!rowspan="2"|Argumente
 +
|''str''||Quellstring
 
|-
 
|-
|   ||Find('abcde', 'bc') -> WAHR<br />Find('abcde', 'xy') -> FALSCH||  
+
|''strSearch''||Zu suchender String
 
|-
 
|-
|}
+
!Rückgabewert
 
+
|colspan="2"|Sucht in ''strSearch'' nach ''str''. Wird ''str'' gefunden, so wird dessen Position zurückgegeben, sonst 0.
 
 
StrStr( str, strSearch )
 
 
 
Argumente
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||str||Quellstring|| 
+
!rowspan="2"|Beispiele
 +
|<code>StrStr('abcde','bc')</code>||2
 
|-
 
|-
||   ||strSearch||Gesuchter String
+
|<code>StrStr('abcde','xy')</code>||0
 
|-
 
|-
 
|}
 
|}
  
Rückgabewert
+
== Left( str, length ) ==
 
+
{| class="wikitable"
 
+
|-
{|
+
!rowspan="2"|Argumente
 +
|''str''||Quellstring
 
|-
 
|-
|   ||Findet die erste Stelle von str durch strSearch. Für den Fall, dass die Such erfolgreich war, wird die Stelle zurückgegeben, andernfalls wird eine 0 zurückgegeben.|| 
+
|''length''||Integer, Länge des Rückgabewerts
 
|-
 
|-
|}
+
!Rückgabewert
 
+
|colspan="2"|Gibt die ersten ''length'' Zeichen von ''str'' zurück.
Beispiel
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||StrStr('abcdefghijklmn', 'fgh') -> 6<br />StrStr('abcdefghijklmn', 'xyz') -> 0||  
+
!Beispiel
 +
|<code>Left('abcde',3)</code>||"abc"
 
|-
 
|-
 
|}
 
|}
  
 
+
=== LeftB( str, length, flag ) ===
Left( str, length )
+
{| class="wikitable"
 
 
Argumente
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||str||Quellstring|| 
+
!rowspan="4"|Argumente
 +
|''str''||Quellstring
 
|-
 
|-
||  ||length||Ganze Zahl. Die Zeichennummer des String.
+
|''length''||Integer, Länge des Rückgabewerts in Bytes
 
|-
 
|-
|}
+
|rowspan="2"|''flag''||0, falls Mehrbytezeichen geteilt werden dürfen
 
 
Rückgabewert
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||Gibt die Länge der Zeichen des linken Quellstring aus.|| 
+
|1, falls der Rückgabewert verlängert werden muss, um Mehrbytezeichen komplett zu enthalten
 
|-
 
|-
|}
+
!Rückgabewert
 
+
|colspan="2"|Gibt die ersten ''length'' Zeichen von ''str'' zurück.
Beispiele
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||Left('abcde',3) -> 'abc'||  
+
!rowspan="2"|Beispiele
 +
|<code>LeftB('あい12うえお34',7,0)</code>||"あい12"
 
|-
 
|-
|}
+
|<code>LeftB('あい12うえお34',7,1)</code>||"あい12う"
 
 
Hinweise
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||Gibt 3 Zeichen von "abcde" des Linken heraus.|| 
+
!Hinweis
 +
|colspan="2"|Unterscheidet sich von <code>Left()</code> durch die Unterstützung von [https://docs.microsoft.com/de-de/cpp/c-language/multibyte-and-wide-characters Mehrbytezeichen], die in einigen Sprachen wie Japanisch vorkommen, in denen ein Zeichen für die Kodierung zwei Bytes benötigt.
 
|-
 
|-
 
|}
 
|}
  
 
+
== Right( str, length ) ==
LeftB( str, length, flag )
+
{| class="wikitable"
 
+
|-
Argumente
+
!rowspan="2"|Argumente
 
+
|''str''||Quellstring
 
 
{|
 
 
|-
 
|-
|   ||str||Quellstring|| 
+
|''length''||Integer, Länge des Rückgabewerts
 
|-
 
|-
||   ||length||Ganze Zahl. Die Byte-Anzahl des String.
+
!Rückgabewert
 +
|colspan="2"|Gibt die letzten ''length'' Zeichen von ''str'' zurück.
 
|-
 
|-
||  ||flag||0...Für denn Fall, dass mehrere Byte-String gekürzt werden müssen, führen Sie dies aus. <br />1...Für den Fall, dass mehrere Byte-String gekürzt wurden und dann ergänzt ergänzt wurden, jedoch nicht genügend Bytes vorhanden sind.
+
!Beispiel
 +
|<code>Right('abcde',3)</code>||"cde"
 
|-
 
|-
 +
|}
  
 
+
=== RightB( str, length, flag ) ===
{|
+
{| class="wikitable"
 
|-
 
|-
|Rückgabewert||Gibt die Länge der Zeichen des linken Quellstring aus.|| 
+
!rowspan="4"|Argumente
 +
|''str''||Quellstring
 
|-
 
|-
 
+
|''length''||Integer, Länge des Rückgabewerts in Bytes
Beispiel
 
 
 
 
 
[[Image:internal-fun-LeftB-01.jpg]]
 
Hinweise
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||Anders verhält es sich mit der linken Funktion, wenn, wie im obigen Beispiel, Zeichen verwendet werden, die mehrere Bytes in Anspruch nehmen. Dazu gehören japanische Schriftzeichen. Ein japanisches Schriftzeichen benötigt zwei Bytes.|| 
+
|rowspan="2"|''flag''||0, falls Mehrbytezeichen geteilt werden dürfen
 
|-
 
|-
|}
+
|1, falls der Rückgabewert verlängert werden muss, um Mehrbytezeichen komplett zu enthalten
 
 
 
 
Right( str, length )
 
 
 
Argumente
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||str||Quellstring|| 
+
!Rückgabewert
 +
|colspan="2"|Gibt die letzten ''length'' Zeichen von ''str'' zurück.
 
|-
 
|-
||   ||Länge||Ganze Zahl. Anzahl der Zeichen des Get-String.
+
!rowspan="2"|Beispiele
 +
|<code>RightB('あい12うえお34',7,0)</code>||"えお34"
 
|-
 
|-
|}
+
|<code>RightB('あい12うえお34',7,1)</code>||"うえお34"
 
 
Rückgabewert
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||Gibt die Länge der Zeichen des Quellstring zur Rechten aus.|| 
+
!Hinweis
 +
|colspan="2"|Unterscheidet sich von <code>Right()</code> durch die Unterstützung von [https://docs.microsoft.com/de-de/cpp/c-language/multibyte-and-wide-characters Mehrbytezeichen], die in einigen Sprachen wie Japanisch vorkommen, in denen ein Zeichen für die Kodierung zwei Bytes benötigt.
 
|-
 
|-
 
|}
 
|}
  
Beispiel
+
== Len( str ) ==
 
+
{| class="wikitable"
 
 
{|
 
 
|-
 
|-
|   ||Right('abcde',3) -> 'cde'||  
+
!Argument
 +
|''str''||Quellstring
 
|-
 
|-
|}
+
!Rückgabewert
 
+
|colspan="2"|Gibt die Anzahl an Zeichen in ''str'' zurück.
Hinweise
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||Gibt 3 Zeichen von "abcde" von rechts wieder.||  
+
!Beispiel
 +
|<code>Len('abcde')</code>||5
 
|-
 
|-
 
|}
 
|}
  
 
+
=== LenB( str ) ===
RightB( str, length, flag )
+
{| class="wikitable"
 
+
|-
Argumente
+
!Argument
 
+
|''str''||Quellstring
 
 
{|
 
 
|-
 
|-
|   ||str||Quellstring|| 
+
!Rückgabewert
 +
|colspan="2"|Gibt die Anzahl an Bytes in ''str'' zurück.
 
|-
 
|-
||   ||Länge||Ganze Zahl. Die Anzahl Bytes des Get-Strings.
+
!Beispiel
 +
|<code>LenB('あいcde')</code>||7
 
|-
 
|-
||   ||Flag||0 ... Für den Fall, dass ein mehrfacher Bytestring geschnitten werden muss.<br />1 ...Für den Fall, dass ein mherfacher Bytestring geschnitten werden muss, müssen ausreichend Bytes benutzt werden.
+
!Hinweis
 
+
|colspan="2"|Unterscheidet sich von <code>Len()</code> durch die Unterstützung von [https://docs.microsoft.com/de-de/cpp/c-language/multibyte-and-wide-characters Mehrbytezeichen], die in einigen Sprachen wie Japanisch vorkommen, in denen ein Zeichen für die Kodierung zwei Bytes benötigt.
 
|-
 
|-
 
|}
 
|}
  
Rückgabewert
+
== Mid( str, start, length ) ==
 
+
{| class="wikitable"
 
+
|-
{|
+
!rowspan="3"|Argumente
 +
|''str''||Quellstring
 
|-
 
|-
|   ||Gibt die Länge der Zeichen des rechtesten Quellstring aus.|| 
+
|''start''||Startposition des Rückgabewerts, mindestens 1
 
|-
 
|-
|}
+
|''length''||Integer, Länge des Rückgabewerts
 
 
Beispiel
 
 
 
 
 
[[Image:internal-fun-RightB-01.jpg]]
 
Hinweise
 
 
 
 
 
Len( str )
 
 
 
Argumente
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||str||Quellstring|| 
+
!Rückgabewert
 +
|colspan="2"|Gibt die ''length'' Zeichen ab ''start'' in ''str'' zurück. Ist ''start'' größer als die Länge von ''str'', so wird ein leerer String zurückgegeben.
 
|-
 
|-
|}
+
!Beispiel
 
+
|<code>Mid('abcde',2,3)</code>||"bcd"
Rückgabewert
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||Gibt die Anzahl der Zeichen des Quellstring aus.|| 
+
!Hinweis
 +
|colspan="2"|
 +
Die erste Position von ''str'' ist 1.
 
|-
 
|-
 
|}
 
|}
  
Beispiel
+
== GenStrSerialNum ( serialNum, length ) ==
 
+
{| class="wikitable"
 
 
{|
 
 
|-
 
|-
|   ||Len('abcdefghijklmn') -> 14||  
+
!rowspan="2"|Argumente
 +
|''serialNum''||Seriennummer
 
|-
 
|-
|}
+
|''length''||Ziffernanzahl der Seriennummer
 
 
 
 
LenB( str )
 
 
 
Argumente
 
 
 
 
 
{|
 
|-
 
|  ||str||Quellstring|| 
 
 
|-
 
|-
|}
+
!Rückgabewert
 
+
|colspan="2"|Gibt ''serialNum'' als String zurück, der mit führenden Nullen auf ''length'' Zeichen verlängert wird.
Rückgabewert
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||Gibt die Anzahl der Bytes des Quellstring aus.|| 
+
!Beispiel
 +
|<code>GenStrSerialNum(5,3)</code>||"005"
 
|-
 
|-
 
|}
 
|}
  
Beispiel
+
== Substitute ( str, strSearch, strSubs, index ) ==
 
+
{| class="wikitable"
 
 
[[Image:internal-fun-LenB-01.jpg]]
 
Hinweise
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||Anders verhält es sich mit der linken Funktion, wenn, wie im obigen Beispiel, Zeichen verwendet werden, die mehrere Bytes in Anspruch nehmen, wie japanische Schriftzeichen. Ein japanisches Schriftzeichen benötigt zwei Bytes.|
+
!rowspan="4"|Argumente
 +
|''str''||Quellstring
 
|-
 
|-
|}
+
|''strSearch''||Zu suchender String
 
 
 
 
Mid( str, start, length )
 
 
 
Argumente
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||str||Quellstring|| 
+
|''strSubs''||Neuer String
 
|-
 
|-
||   ||Start||Die linke Position des str Argumentes ist 1. Diese Position ist als Startposition spezifiziert, um den Unterstring des str-Strings zu erhalten. Für den Fall, dass der Wert größer ist als die Anzahl der Zeichen des str-String, wird eine leere Zeichenfolge ausgegeben. Der Minimumwert des Starts ist 1.
+
|''index''||Integer, definiert welcher Treffer ersetzt wird, falls ''strSearch'' in ''str'' mehrfach gefunden wird.<br>Bei negativem Wert wird vom Ende von ''str'' aus nach links gezählt. Bei 0 werden alle Treffer ersetzt
 
|-
 
|-
||   ||Länge||Ganze Zahl. Anzahl der Zeichen des Get-String.
+
!Rückgabewert
 +
|colspan="2"|Gibt ''str'' zurück, in dem ''strSearch'' mit ''strSubs'' ersetzt wurde.
 
|-
 
|-
|}
+
!rowspan="4"|Beispiele
 
+
|<code>Substitute('abcabc','ab','xy',1)</code>||"xycabc"
Rückgabewert
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||Gibt die Länge der Zeichen der Startposition des str-Sting aus.|| 
+
|<code>Substitute('abcabc','ab','xy',0)</code>||"xycxyc"
 
|-
 
|-
|}
+
|<code>Substitute('abcabc','ab','xy',-1)</code>||"abcxyc"
 
 
Beispiel
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||Mid('abcde',2,3) -> 'bcd'||  
+
|<code>Substitute('aaa','aa','a',0)</code>||"aa"
 
|-
 
|-
 
|}
 
|}
  
Hinweise
+
== Replace( str, start, length, strRepl ) ==
 
+
{| class="wikitable"
 
 
{|
 
 
|-
 
|-
|   ||Gibt 2 Zeichen der 3. Position des "abcde"-String aus.||  
+
!rowspan="4"|Argumente
 +
|''str''||Quellstring
 
|-
 
|-
|}
+
|''start''||Startposition der zu ersetzenden Zeichen
 
 
 
 
GenStrSerialNum ( serialNum length )
 
 
 
Argumente
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||serialNum||Seriennummer|| 
+
|''length''||Anzahl der zu ersetzenden Zeichen
 
|-
 
|-
||   ||length||Digitale Nummer der Seriennummer
+
|''strRepl''||Neuer String
 
|-
 
|-
|}
+
!Rückgabewert
 
+
|colspan="2"|Gibt ''str'' zurück, in dem ab dem ''start''-Zeichen ''length'' Zeichen durch ''strRepl'' ersetzt wurden.
Rückgabewert
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||Return serialNum filled with zero as a string with length digits.|
+
!rowspan="3"|Beispiele
 +
|<code>Replace('abcde',1,1,'xy')</code>||"xybcde"
 
|-
 
|-
|}
+
|<code>Replace('abcde',1,2,'xy')</code>||"xycde"
 
 
Beispiel
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||GenStrSerialNum( 5, 3 ) -> '005'||  
+
|<code>Replace('abcde',1,3,'xy')</code>||"xyde"
 
|-
 
|-
 
|}
 
|}
 
  
 
<hr>
 
<hr>
 
<div align="right">Hilfe Nummer: 741510</div>
 
<div align="right">Hilfe Nummer: 741510</div>

Version vom 7. Januar 2019, 17:19 Uhr

Hilfe Nummer: 741510
Interne Funktionen
Formeleditor

Asprova stellt Ihnen die folgenden Funktionen zur Manipulation von Strings (Zeichenketten, Texten) zur Verfügung.

Find( str, strSearch )

Argumente str Quellstring
strSearch Zu suchender String
Rückgabewert Sucht in strSearch nach str. Wird str gefunden, so wird TRUE zurückgegeben, sonst FALSE.
Beispiele Find('abcde','bc') TRUE
Find('abcde','xy') FALSE

StrStr( str, strSearch )

Argumente str Quellstring
strSearch Zu suchender String
Rückgabewert Sucht in strSearch nach str. Wird str gefunden, so wird dessen Position zurückgegeben, sonst 0.
Beispiele StrStr('abcde','bc') 2
StrStr('abcde','xy') 0

Left( str, length )

Argumente str Quellstring
length Integer, Länge des Rückgabewerts
Rückgabewert Gibt die ersten length Zeichen von str zurück.
Beispiel Left('abcde',3) "abc"

LeftB( str, length, flag )

Argumente str Quellstring
length Integer, Länge des Rückgabewerts in Bytes
flag 0, falls Mehrbytezeichen geteilt werden dürfen
1, falls der Rückgabewert verlängert werden muss, um Mehrbytezeichen komplett zu enthalten
Rückgabewert Gibt die ersten length Zeichen von str zurück.
Beispiele LeftB('あい12うえお34',7,0) "あい12"
LeftB('あい12うえお34',7,1) "あい12う"
Hinweis Unterscheidet sich von Left() durch die Unterstützung von Mehrbytezeichen, die in einigen Sprachen wie Japanisch vorkommen, in denen ein Zeichen für die Kodierung zwei Bytes benötigt.

Right( str, length )

Argumente str Quellstring
length Integer, Länge des Rückgabewerts
Rückgabewert Gibt die letzten length Zeichen von str zurück.
Beispiel Right('abcde',3) "cde"

RightB( str, length, flag )

Argumente str Quellstring
length Integer, Länge des Rückgabewerts in Bytes
flag 0, falls Mehrbytezeichen geteilt werden dürfen
1, falls der Rückgabewert verlängert werden muss, um Mehrbytezeichen komplett zu enthalten
Rückgabewert Gibt die letzten length Zeichen von str zurück.
Beispiele RightB('あい12うえお34',7,0) "えお34"
RightB('あい12うえお34',7,1) "うえお34"
Hinweis Unterscheidet sich von Right() durch die Unterstützung von Mehrbytezeichen, die in einigen Sprachen wie Japanisch vorkommen, in denen ein Zeichen für die Kodierung zwei Bytes benötigt.

Len( str )

Argument str Quellstring
Rückgabewert Gibt die Anzahl an Zeichen in str zurück.
Beispiel Len('abcde') 5

LenB( str )

Argument str Quellstring
Rückgabewert Gibt die Anzahl an Bytes in str zurück.
Beispiel LenB('あいcde') 7
Hinweis Unterscheidet sich von Len() durch die Unterstützung von Mehrbytezeichen, die in einigen Sprachen wie Japanisch vorkommen, in denen ein Zeichen für die Kodierung zwei Bytes benötigt.

Mid( str, start, length )

Argumente str Quellstring
start Startposition des Rückgabewerts, mindestens 1
length Integer, Länge des Rückgabewerts
Rückgabewert Gibt die length Zeichen ab start in str zurück. Ist start größer als die Länge von str, so wird ein leerer String zurückgegeben.
Beispiel Mid('abcde',2,3) "bcd"
Hinweis

Die erste Position von str ist 1.

GenStrSerialNum ( serialNum, length )

Argumente serialNum Seriennummer
length Ziffernanzahl der Seriennummer
Rückgabewert Gibt serialNum als String zurück, der mit führenden Nullen auf length Zeichen verlängert wird.
Beispiel GenStrSerialNum(5,3) "005"

Substitute ( str, strSearch, strSubs, index )

Argumente str Quellstring
strSearch Zu suchender String
strSubs Neuer String
index Integer, definiert welcher Treffer ersetzt wird, falls strSearch in str mehrfach gefunden wird.
Bei negativem Wert wird vom Ende von str aus nach links gezählt. Bei 0 werden alle Treffer ersetzt
Rückgabewert Gibt str zurück, in dem strSearch mit strSubs ersetzt wurde.
Beispiele Substitute('abcabc','ab','xy',1) "xycabc"
Substitute('abcabc','ab','xy',0) "xycxyc"
Substitute('abcabc','ab','xy',-1) "abcxyc"
Substitute('aaa','aa','a',0) "aa"

Replace( str, start, length, strRepl )

Argumente str Quellstring
start Startposition der zu ersetzenden Zeichen
length Anzahl der zu ersetzenden Zeichen
strRepl Neuer String
Rückgabewert Gibt str zurück, in dem ab dem start-Zeichen length Zeichen durch strRepl ersetzt wurden.
Beispiele Replace('abcde',1,1,'xy') "xybcde"
Replace('abcde',1,2,'xy') "xycde"
Replace('abcde',1,3,'xy') "xyde"

Hilfe Nummer: 741510