Vergleich von Programmiersprachen (Stringfunktionen)

Zeichenfolgenfunktionen werden in Computerprogrammiersprachen verwendet, um eine Zeichenfolge zu bearbeiten oder Informationen über eine Zeichenfolge abzufragen (einige tun beides).

Die meisten Programmiersprachen, die einen String-Datentyp haben, haben einige String-Funktionen, obwohl es innerhalb jeder Sprache andere Low-Level-Möglichkeiten geben kann, Strings direkt zu handhaben. In objektorientierten Sprachen werden String-Funktionen oft als Eigenschaften und Methoden von String-Objekten implementiert. In funktionalen und listenbasierten Sprachen wird eine Zeichenfolge als Liste (von Zeichencodes) dargestellt, daher könnten alle Listenmanipulationsverfahren als Zeichenfolgenfunktionen betrachtet werden. Solche Sprachen können jedoch auch eine Teilmenge expliziter string-spezifischer Funktionen implementieren.

Für Funktionen, die Strings manipulieren, haben moderne objektorientierte Sprachen wie C# und Java unveränderliche Strings und geben eine Kopie zurück (in neu zugewiesenen dynamischen Speicher), während andere, wie C, den ursprünglichen String manipulieren, es sei denn, der Programmierer kopiert Daten in einen neuen String. Siehe zum Beispiel Verkettung unten.

Das einfachste Beispiel für eine String-Funktion ist die length(string) Funktion. Diese Funktion gibt die Länge eines String-Literals zurück.

z.B length("hello world") würde zurückkehren 11.

Andere Sprachen können Zeichenfolgenfunktionen mit ähnlicher oder genau derselben Syntax oder Parametern oder Ergebnissen haben. Zum Beispiel wird die Längenfunktion in vielen Sprachen normalerweise dargestellt als len(string). Die folgende Liste der allgemeinen Funktionen soll dazu beitragen, diese Verwirrung einzudämmen.

Allgemeine Zeichenfolgenfunktionen (mehrsprachige Referenz)[edit]

String-Funktionen, die in vielen Sprachen gebräuchlich sind, sind unten aufgeführt, einschließlich der verschiedenen verwendeten Namen. Die folgende Liste allgemeiner Funktionen soll Programmierern helfen, die äquivalente Funktion in einer Sprache zu finden. Beachten Sie, dass die Verkettung von Zeichenfolgen und reguläre Ausdrücke auf separaten Seiten behandelt werden. Angaben in Guillemets (« … ») sind optional.

CharAt[edit]

Definition charAt(string,integer) gibt Zeichen zurück.
Beschreibung Gibt das Zeichen am Index in der Zeichenfolge zurück.
Äquivalent Siehe Teilstring der Länge 1 Zeichen.
Format Sprachen Basisindex
string[i] ALGOL 68, APL, Julia, Pascal, Object Pascal (Delphi), Seed7 1
string[i] C, C++, C#, Cobra, D, FreeBASIC, Go, Python,[1]PHP, Rubin,[1]Windows PowerShell, JavaScript, APL 0
string{i} PHP (veraltet in 5.3) 0
string(i) Ada ≥1
Mid(string,i,1) VB 1
MID$(string,i,1) BASIC 1
string.Chars(i) VB.NET 0
string(i:i) Fortran 1
string.charAt(i) Java, JavaScript 0
string.[i] OCaml, F# 0
string.chars().nth(i) Rost[2] 0
string[i,1] Wählen Sie Basic 1
String.sub (string, i) Standard-ML 0
string !! i Haskell 0
(string-ref string i) Planen 0
(char string i) Gemeinsame Lisp 0
(elt string i) ISLISP 0
(get string i) Clojure 0
substr(string, i, 1) Perl 5[1] 0
substr(string, i, 1)
string.substr(i, 1)
Raku[3] 0
substr(string, i, 1) PL/I 1
string.at(i) C++ (STL) (mit Grenzüberprüfung) 0
lists:nth(i, string) Erlang 1
[string characterAtIndex:i] Ziel c (NSString * nur) 0
string.sub(string, i, i)
(string):sub(i, i)
Lua[1] 1
string at: i Smalltalk (mit Grenzüberprüfung) 1
string index string i Tcl 0
StringTake[string, {i}] Mathematica, Wolfram-Sprache[1] 1
string@i Eiffel 1
string (i:1) COBOL 1
istring APL 0 oder 1
{ Example in Pascal }
var 
  MyStr: string = 'Hello, World';
  MyChar: Char;
begin
  MyChar := MyStr[2];          // 'e'
# Example in ALGOL 68 #
"Hello, World"[2];             // 'e'
// Example in C
#include              // for printf
char MyStr[] = "Hello, World";
printf("%c", *(MyStr+1));      // 'e'
printf("%c", *(MyStr+7));      // 'W'
printf("%c", MyStr[11]);       // 'd'
printf("%s", MyStr);           // 'Hello, World'
printf("%s", "Hello(2), World(2)"); // 'Hello(2), World(2)'
// Example in C++
#include             // for "cout"
#include             // for "string" data type
using namespace std;
char MyStr1[] = "Hello(1), World(1)";
string MyStr2 = "Hello(2), World(2)";
cout << "Hello(3), World(3)";  // 'Hello(3), World(3)'
cout << MyStr2[6];             // '2'
cout << MyStr1.substr (5, 3);  // '(1)'
// Example in C#
"Hello, World"[2];             // 'l'
# Example in Perl 5
substr("Hello, World", 1, 1);  # 'e'
# Examples in Python
"Hello, World"[2]              #  'l'
"Hello, World"[-3]             #  'r'
# Example in Raku
"Hello, World".substr(1, 1);   # 'e'
' Example in Visual Basic
Mid("Hello, World",2,1)
' Example in Visual Basic .NET
"Hello, World".Chars(2)    '  "l"c
" Example in Smalltalk "
'Hello, World' at: 2.        "$e"
//Example in Rust
"Hello, World".chars().nth(2);   // Some('l')

Vergleichen (Ganzzahlergebnis)[edit]

Definition compare(string1,string2) gibt ganze Zahl zurück.
Beschreibung Vergleicht zwei Strings miteinander. Wenn sie gleichwertig sind, wird eine Null zurückgegeben. Andernfalls geben die meisten dieser Routinen ein positives oder negatives Ergebnis zurück, je nachdem, ob string1 ist lexikographisch größer als bzw. kleiner als string2. Die Ausnahmen sind die Scheme- und Rexx-Routinen, die den Index der ersten Nichtübereinstimmung zurückgeben, und Smalltalk, die einen Vergleichscode beantworten, der angibt, wie der Empfänger relativ zum String-Parameter sortiert.
Format Sprachen
IF string1<string2 THEN -1 ELSE ABS (string1>string2) FI ALGOL 68
cmp(string1, string2) Python 2
(string1 > string2) - (string1 < string2) Python
strcmp(string1, string2) C, PHP
std.string.cmp(string1, string2) D
StrComp(string1, string2) VB, Object Pascal (Delphi)
string1 cmp string2 Perl, Raku
string1 compare: string2 Smalltalk (Quietsch, Pharo)
string1 <=> string2 Rubin, C++ (STL, C++20)[4]
string1.compare(string2) C++ (STL), Swift (Grundlage)
compare(string1, string2) Rexx, Seed7
CompareStr(string1, string2) Pascal, Objektpascal (Delphi)
string1.compareTo(string2) Kobra, Java
string1.CompareTo(string2) VB.NET, C#, F#
(compare string1 string2) Clojure
(string= string1 string2) Gemeinsame Lisp
(string-compare string1 string2 p< p= p>) Schema (SRFI 13)
(string= string1 string2) ISLISP
compare string1 string2 OCaml
String.compare (string1, string2) Standard-ML[5]
compare string1 string2 Haskell[6]
[string]::Compare(string1, string2) Windows PowerShell
[string1 compare:string2] Ziel c (NSString * nur)
LLT(string1,string2)
LLE(string1,string2)
LGT(string1,string2)
LGE(string1,string2)
Fortran[7]
string1.localeCompare(string2) JavaScript
bytes.Compare([]byte(string1), []byte(string2)) gehen
string compare ?-nocase? ?-length int? string1 string2 Tcl
compare(string1,string2,count) PL/I[8]
string1.cmp(string2) Rost[9]
# Example in Perl 5
"hello" cmp "world";       # returns -1
# Example in Python
cmp("hello", "world")      # returns -1
# Examples in Raku
"hello" cmp "world";       # returns Less
"world" cmp "hello";       # returns More
"hello" cmp "hello";       # returns Same
/** Example in Rexx */ 
compare("hello", "world")  /* returns index of mismatch: 1 */
; Example in Scheme
(use-modules (srfi srfi-13))
; returns index of mismatch: 0
(string-compare "hello" "world" values values values)

Vergleichen (relationaler Operator-basiert, boolesches Ergebnis)[edit]

Definition string1 OP string2 ODER (compare string1 string2) gibt Boolean zurück.
Beschreibung Vergleicht lexikografisch zwei Zeichenfolgen mithilfe eines relationalen Operators oder einer relationalen Funktion. Boolesches Ergebnis zurückgegeben.
Format Sprachen
string1 OP string2, wo OP kann jeder sein =, <>, , <= und >= Pascal, Object Pascal (Delphi), OCaml, Seed7, Standard ML, BASIC, VB, VB .NET, F#
string1 OP string2, wo OP kann jeder sein =, /=, ≠, , <=, ≤ und ; Ebenfalls: EQ, NE, LT, LE, GE und GT ALGOL 68
(stringOP? string1 string2), wo OP kann jeder sein =, -ci=, , -ci>, <=, -ci<=, >= und -ci>= (Operatoren beginnend mit '-ci' Groß-/Kleinschreibung wird nicht beachtet) Planen
(stringOP string1 string2), wo OP kann jeder sein =, -ci=, <>, -ci<>, , -ci>, <=, -ci<=, >= und -ci>= (Operatoren beginnend mit '-ci' Groß-/Kleinschreibung wird nicht beachtet) Schema (SRFI 13)
(stringOP string1 string2), wo OP kann jeder sein =, -equal, /=, -not-equal, , -greaterp, <=, -not-greaterp, >= und -not-lessp (bei den verbalen Operatoren wird die Groß-/Kleinschreibung nicht beachtet) Gemeinsame Lisp
(stringOP string1 string2), wo OP kann jeder sein =, /=, , <=, und >= ISLISP
string1 OP string2, wo OP kann jeder sein =, =, , <= und >= Rexx
string1 OP string2, wo OP kann jeder sein =, ¬=, , <=, >=, ¬< und ¬> PL/I
string1 OP string2, wo OP kann jeder sein =, /=, , <= und >= Ada
string1 OP string2, wo OP kann jeder sein ==, /=, , =< und >= Erlang
string1 OP string2, wo OP kann jeder sein ==, /=, , <= und >= Haskell
string1 OP string2, wo OP kann jeder sein eq, ne, lt, gt, le und ge Perl, Raku
string1 OP string2, wo OP kann jeder sein ==, !=, , <= und >= C++ (STL), C#, D, Go, JavaScript, Python, PHP, Ruby, Rust,[10]Schnell
string1 OP string2, wo OP kann jeder sein -eq, -ceq, -ne, -cne, -lt, -clt, -gt, -cgt, -le, -cle, -ge, und -cge (Operatoren beginnend mit 'c' Groß-/Kleinschreibung beachten) Windows PowerShell
string1 OP string2, wo OP kann jeder sein ==, ~=, , <= und >= Lua
string1 OP string2, wo OP kann jeder sein =, ~=, , <= und >= Smalltalk
string1 OP string2, wo OP kann jeder sein ==, /=, , <= und >=; Also: .EQ., .NE., .LT., .LE., .GT. und .GE. Fortran.[11]
string1 OP string2 wo OP kann jeder sein =, <>, , <=, >= sowie formulierte Äquivalente COBOL
string1 OP string2 wo OP kann jeder sein ==, <>, , <= und >= Kobra
string1 OP string2 ist in der Syntax vorhanden, bedeutet aber den Vergleich der Zeiger, die auf die Strings zeigen, nicht des String-Inhalts. Verwenden Sie die Funktion Vergleichen (ganzzahliges Ergebnis). C, Java
string1.METHOD(string2) wo METHOD ist einer von eq, ne, gt, lt, ge, le Rost[10]
% Example in Erlang
"hello" > "world".            % returns false
# Example in Raku
"art" gt "painting";           # returns False
"art" lt "painting";           # returns True
# Example in Windows PowerShell
"hello" -gt "world"           # returns false
;; Example in Common Lisp
(string> "art" "painting")      ; returns nil
(string< "art" "painting")      ; returns non nil

Verkettung[edit]

Definition concatenate(string1,string2) gibt Zeichenfolge zurück.
Beschreibung Verkettet (verbindet) zwei Strings miteinander und gibt den kombinierten String zurück. Beachten Sie, dass einige Sprachen wie C veränderliche Zeichenfolgen haben, sodass die zweite Zeichenfolge tatsächlich an die erste Zeichenfolge angehängt und die mutierte Zeichenfolge zurückgegeben wird.
Format Sprachen
string1 & string2 Ada, FreeBASIC, Seed7, BASIC, VB, VB .NET, COBOL (nur zwischen Literalen)
strcat(string1, string2) C, C++ (char * nur)[12]
string1 . string2 Perl, PHP
string1 + string2 ALGOL 68, C++ (STL), C#, Cobra, FreeBASIC, Go, Pascal, Object Pascal (Delphi), Java, JavaScript, Windows PowerShell, Python, Ruby, Rust,[13]F#, Swift, Turing, VB
string1 ~ string2 D, Raku
(string-append string1 string2) Schema, ISLISP
(concatenate 'string string1 string2) Gemeinsame Lisp
(str string1 string2) Clojure
string1 || string2 Rexx, SQL, PL/I
string1 // string2 Fortran
string1 ++ string2 Erlang, Haskell
string1 ^ string2 OCaml, Standard-ML, F#
[string1 stringByAppendingString:string2] Ziel c (NSString * nur)
string1 .. string2 Lua
string1 , string2 Smalltalk, APL
string1 string2 SNOBOL
string1string2 Bash-Shell
string1 <> string2 Mathematik
concat Schnur1 Schnur2 Tcl
{ Example in Pascal }
'abc' + 'def';      // returns "abcdef"
// Example in C#
"abc" + "def";      // returns "abcdef"
' Example in Visual Basic
"abc" & "def"       '  returns "abcdef"
"abc" + "def"       '  returns "abcdef"
"abc" & Null        '  returns "abc"
"abc" + Null        '  returns Null
// Example in D
"abc" ~ "def";      // returns "abcdef"
;; Example in common lisp
(concatenate 'string "abc " "def " "ghi")  ; returns "abc def ghi"
# Example in Perl 5
"abc" . "def";      # returns "abcdef"
"Perl " . 5;        # returns "Perl 5"
# Example in Raku
"abc" ~ "def";      # returns "abcdef"
"Perl " ~ 6;        # returns "Raku"

Enthält[edit]

Definition contains(string,substring) gibt boolean zurück
Beschreibung Gibt zurück, ob Schnur enthält Teilzeichenfolge als Teilzeichenfolge. Dies entspricht der Verwendung von Find und der anschließenden Feststellung, dass dies nicht zu der in der dritten Spalte des Abschnitts Find aufgeführten Fehlerbedingung führt. Einige Sprachen haben jedoch eine einfachere Möglichkeit, diesen Test auszudrücken.
Verwandt Finden
Format Sprachen
string_in_string(string, loc int, substring) ALGOL 68
ContainsStr(string, substring) Objektpascal (Delphi)
strstr(string, substring) != NULL C, C++ (char * nur)
string.Contains(substring) C#, VB.NET, Windows PowerShell, F#
string.contains(substring) Kobra, Java (1.5+), Raku, Rost,[14]C++ (C++23)[15]
string.indexOf(substring) >= 0 JavaScript
strpos(string, substring) !== false PHP
pos(string, substring) <> 0 Samen7
substring in string Kobra, Python (2.3+)
string.find(string, substring) ~= nil Lua
string.include?(substring) Rubin
Data.List.isInfixOf substring string Haskell (GHC 6.6+)
string includesSubstring: substring Smalltalk (Quietschen, Pharo, Smalltalk/X)
String.isSubstring substring string Standard-ML
(search substring string) Gemeinsame Lisp
(not (null (string-index substring string))) ISLISP
(substring? substring string) Clojure
! StringFreeQ[string, substring] Mathematik
index(string, substring, startpos)>0 Fortran, PL/I[16]
index(string, substring, occurrence)>0 Wählen Sie Basic
strings.Contains(string, substring) gehen
string.find(substring) != string::npos C++
[string containsString:substring] Ziel c (NSString * nur, iOS 8+/OS X 10.10+)
string.rangeOfString(substring) != nil Swift (Stiftung)
∨/substringstring APL
¢ Example in ALGOL 68 ¢
string in string("e", loc int, "Hello mate");      ¢ returns true ¢
string in string("z", loc int, "word");            ¢ returns false ¢
// Example In C#
"Hello mate".Contains("e");      // returns true
"word".Contains("z");            // returns false
#  Example in Python
"e" in "Hello mate"              #  returns true
"z" in "word"                    #  returns false
#  Example in Raku
"Good morning!".contains('z')    #  returns False
"¡Buenos días!".contains('í');   #  returns True
"  Example in Smalltalk "
'Hello mate' includesSubstring: 'e'  " returns true "
'word' includesSubstring: 'z'        " returns false "

Gleichberechtigung[edit]

Testet, ob zwei Zeichenfolgen gleich sind. Siehe auch #Vergleichen und #Vergleichen. Beachten Sie, dass die Durchführung von Gleichheitsprüfungen über einen generischen Vergleich mit einem ganzzahligen Ergebnis nicht nur für den Programmierer verwirrend ist, sondern oft auch eine wesentlich teurere Operation ist; dies gilt insbesondere bei der Verwendung von "C-Strings".

Format Sprachen
string1 == string2 Python, C++ (STL), C#, Cobra, Go, JavaScript (Ähnlichkeit), PHP (Ähnlichkeit), Ruby, Rust,[10]Erlang, Haskell, Lua, D, Mathematica, Swift
string1 === string2 JavaScript, PHP
string1 == string2 or
string1 .EQ. string2
Fortran
strcmp(string1, string2) == 0 C
(string=? string1 string2) Planen
(string= string1 string2) Gewöhnliches Lisp, ISLISP
string1 = string2 ALGOL 68, Ada, Object Pascal (Delphi), OCaml, Pascal, Rexx, Seed7, Standard ML, BASIC, VB, VB .NET, F#, Smalltalk, PL/I, COBOL
test string1 = string2, or
[ string1 = string2 ]
Bourne-Muschel
string1 eq string2 Perl, Raku
string1.equals(string2) Kobra, Java
string1.Equals(string2) C#
string1 -eq string2, or
[string]::Equals(string1, string2)
Windows PowerShell
[string1 isEqualToString:string2], or
[string1 isEqual:string2]
Ziel c (NSString * nur)
string1string2 APL
string1.eq(string2) Rost[10]
// Example in C#
"hello" == "world"           // returns false
' Example in Visual Basic
"hello" = "world"            '  returns false
# Examples in Perl 5
'hello' eq 'world'           # returns 0
'hello' eq 'hello'           # returns 1
# Examples in Raku
'hello' eq 'world'           # returns False
'hello' eq 'hello'           # returns True
# Example in Windows PowerShell
"hello" -eq "world"          #  returns false
⍝ Example in APL
'hello'  'world'          ⍝  returns 0

Finden[edit]

Definition find(string,substring) gibt ganze Zahl zurück
Beschreibung Gibt die Position des Anfangs des ersten Vorkommens von zurück Teilzeichenfolge in Schnur. Wenn die Teilzeichenfolge nicht gefunden wird, geben die meisten dieser Routinen einen ungültigen Indexwert zurück – -1, wenn Indizes 0-basiert sind, 0, wenn sie 1-basiert sind – oder einen Wert, der als Boolean FALSE interpretiert wird.
Verwandt instrrev
Format Sprachen Wenn nicht gefunden
string in string(substring, pos, string[startpos:]) ALGOL 68 liefert BOOL: TRUE oder FALSE und Position in REF INT pos.
InStr(«startposstring,substring) VB (Positionen beginnen bei 1) gibt 0 zurück
INSTR$(string,substring) BASIC (Positionen beginnen bei 1) gibt 0 zurück
index(string,substring) AWK gibt 0 zurück
index(string,substring«,startpos») Perl 5 gibt −1 . zurück
index(string,substring«,startpos»)
string.index(substring,«,startpos»)
Raku gibt Nil zurück
instr(«startposstring,substring) FreeBASIC gibt 0 zurück
strpos(string,substring«,startpos») PHP gibt FALSE zurück
locate(string, substring) Ingres gibt Stringlänge + 1 . zurück
strstr(string, substring) C, C++ (char * nur, gibt Zeiger auf das erste Zeichen zurück) gibt NULL zurück
std.string.indexOf(string, substring) D gibt −1 . zurück
pos(string, substring«, startpos») Samen7 gibt 0 zurück
strings.Index(string, substring) gehen gibt −1 . zurück
pos(substring, string) Pascal, Objektpascal (Delphi) gibt 0 zurück
pos(substring, string«,startpos») Rexx gibt 0 zurück
string.find(substring«,startpos») C++ (STL) gibt std::string::npos zurück
string.find(substring«,startpos«,endpos»») Python gibt −1 . zurück
string.index(substring«,startpos«,endpos»») erhöht ValueError
string.index(substring«,startpos») Rubin gibt null zurück
string.indexOf(substring«,startpos») Java, JavaScript gibt −1 . zurück
string.IndexOf(substring«,startpos«, charcount»») VB.NET, C#, Windows PowerShell, F# gibt −1 . zurück
string:str(string, substring) Erlang gibt 0 zurück
(string-contains string substring) Schema (SRFI 13) gibt #f . zurück
(search substring string) Gemeinsame Lisp gibt NIL zurück
(string-index substring string) ISLISP kehrt zurück nil
List.findIndex (List.isPrefixOf substring) (List.tails string) Haskell (gibt Just . zurück Index) gibt nichts zurück
Str.search_forward (Str.regexp_string substring) string 0 OCaml wirft Not_found . auf
Substring.size (#1 (Substring.position substring (Substring.full string))) Standard-ML gibt die Stringlänge zurück
[string rangeOfString:substring].location Ziel c (NSString * nur) gibt NSNotFound zurück
string.find(string, substring)
(string):find(substring)
Lua gibt null zurück
string indexOfSubCollection: substring startingAt: startpos ifAbsent: aBlock
string findString: substring startingAt: startpos
Smalltalk (Quietsch, Pharo) Bewerten Sie einen Block, der eine Blockschließung (oder einen beliebigen Objektverständniswert) ist.
gibt 0 zurück
startpos = INDEX(string, substring «,back» «, kind») Fortran gibt 0 zurück, wenn Teilzeichenfolge nicht in Zeichenfolge enthalten ist; gibt LEN(string)+1 zurück, wenn Teilstring leer ist
POSITION(substring IN string) SQL gibt 0 zurück (Positionen beginnen bei 1)
index(string, substring, startpos ) PL/I[16] gibt 0 zurück (Positionen beginnen bei 1)
index(string, substring, occurrence ) Wählen Sie Basic gibt 0 zurück, wenn das Vorkommen der Teilzeichenfolge nicht in der Zeichenfolge enthalten ist; (Positionen beginnen bei 1)
string.indexOf(substring«,startpos«, charcount»») Kobra gibt −1 . zurück
string first substring string startpos Tcl gibt −1 . zurück
(substringstring)⍳1 APL gibt 1 + die letzte Position in zurück Schnur
string.find(substring) Rost[17] kehrt zurück None
; Examples in Common Lisp
(search "e" "Hello mate")             ;  returns 1
(search "z" "word")                   ;  returns NIL
// Examples in C#
"Hello mate".IndexOf("e");            // returns 1
"Hello mate".IndexOf("e", 4);         // returns 9
"word".IndexOf("z");                  // returns -1
# Examples in Raku
"Hello, there!".index('e')           # returns 1
"Hello, there!".index('z')           # returns Nil
; Examples in Scheme
(use-modules (srfi srfi-13))
(string-contains "Hello mate" "e")    ;  returns 1
(string-contains "word" "z")          ;  returns #f
' Examples in Visual Basic
InStr("Hello mate", "e")              '  returns 2
InStr(5, "Hello mate", "e")           '  returns 10
InStr("word", "z")                    '  returns 0
" Examples in Smalltalk "
'Hello mate' indexOfSubCollection:'ate'  "returns 8"
'Hello mate' indexOfSubCollection:'late' "returns 0"
I'Hello mate' 
    indexOfSubCollection:'late'
    ifAbsent:[ 99 ]                      "returns 99"
'Hello mate' 
    indexOfSubCollection:'late'
    ifAbsent:[ self error ]              "raises an exception"

Charakter finden[edit]

Definition find_character(string,char) gibt ganze Zahl zurück
Beschreibung Gibt die Position des Anfangs des ersten Vorkommens des Zeichens zurück verkohlen in Schnur. Wenn das Zeichen nicht gefunden wird, geben die meisten dieser Routinen einen ungültigen Indexwert zurück – -1, wenn Indizes 0-basiert sind, 0, wenn sie 1-basiert sind – oder einen Wert, der als Boolean FALSE interpretiert wird. Dies kann als Sonderfall von #Find mit einer Zeichenfolge von einem Zeichen erreicht werden; in vielen Sprachen kann es jedoch einfacher oder effizienter sein, nur ein Zeichen zu finden. Außerdem sind in vielen Sprachen Zeichen und Zeichenfolgen unterschiedlich, daher ist es praktisch, eine solche Funktion zu haben.
Verwandt finden
Format Sprachen Wenn nicht gefunden
char in string(char, pos, string[startpos:]) ALGOL 68 liefert BOOL: TRUE oder FALSE und Position in REF INT pos.
instr(string, any char«,startpos») (char, kann mehrere davon enthalten ein char, in diesem Fall wird die Position des ersten Auftretens eines von ihnen zurückgegeben.) FreeBASIC gibt 0 zurück
strchr(string,char) C, C++ (char * nur, gibt Zeiger auf Zeichen zurück) gibt NULL zurück
std.string.find(string, dchar) D gibt −1 . zurück
string.find(char«,startpos») C++ (STL) gibt std::string::npos zurück
pos(string, char«, startpos») Samen7 gibt 0 zurück
strings.IndexRune(string,char) gehen gibt −1 . zurück
string.indexOf(char«,startpos») Java, JavaScript gibt −1 . zurück
string.IndexOf(char«,startpos«, charcount»») VB.NET, C#, Windows PowerShell, F# gibt −1 . zurück
(position char string) Gemeinsame Lisp gibt NIL zurück
(char-index char string) ISLISP kehrt zurück nil
List.elemIndex char string Haskell (kehrt zurück) Just index) kehrt zurück Nothing
String.index string char OCaml wirft Not_found . auf
position = SCAN (string, set «, back» «, kind») or
position = VERIFY (string, set «, back» «, kind»)[a]
Fortran gibt null zurück
string indexOf: char ifAbsent: aBlock
string indexOf: char
string includes: char
Smalltalk bewerten aBlock die ein BlockClosure (oder irgendein Objektverständniswert)
gibt 0 zurück
kehrt zurück true oder false
index(string, char, startpos ) PL/I[18] gibt 0 zurück (Positionen beginnen bei 1)
string.index(?char) Rubin gibt null zurück
strpos(string,char,startpos) PHP kehrt zurück false
string.indexOf(char«,startpos«, charcount»») Kobra gibt −1 . zurück
stringchar APL gibt 1 + die letzte Position in zurück Schnur
string.find(substring) Rost[17] kehrt zurück None
// Examples in C#
"Hello mate".IndexOf('e');              // returns 1
"word".IndexOf('z')                     // returns -1
; Examples in Common Lisp
(position #e "Hello mate")             ;  returns 1
(position #z "word")                   ;  returns NIL

^a Bei gegebenem Zeichensatz gibt SCAN die Position des ersten gefundenen Zeichens zurück,[19] während VERIFY die Position des ersten Zeichens zurückgibt, das nicht zur Menge gehört.[20]

Format[edit]

Definition format(formatstring, items) gibt Zeichenfolge zurück
Beschreibung Gibt die formatierte Zeichenfolgendarstellung eines oder mehrerer Elemente zurück.
Format Sprachen String-Syntax formatieren
associate(file, string); putf(file, $formatstring$, items) ALGOL 68 ALGOL
Format(item, formatstring) VB
sprintf(formatstring, items) Perl, PHP, Raku, Ruby C
item.fmt(formatstring) Raku C
io_lib:format(formatstring, items) Erlang
sprintf(outputstring, formatstring, items) C C
std::format(formatstring, items) C++ (C++20) Python
std.string.format(formatstring, items) D C
Format(formatstring, items) Objektpascal (Delphi)
fmt.Sprintf(formatstring, items) gehen C
printf -v outputstring formatstring items Bash-Shell C
formatstring % (items) Python, Ruby C
formatstring.format(items) Python .NETZ
fformatstring Python 3
Printf.sprintf formatstring[21] items OCaml, F# C
Text.Printf.printf formatstring items Haskell (GHC) C
formatstring printf: items Smalltalk C
String.format(formatstring, items) Java C
String.Format(formatstring, items) VB.NET, C#, F# .NETZ
(format formatstring items) Schema (SRFI 28) Lispeln
(format nil formatstring items) Gemeinsame Lisp Lispeln
(format formatstring items) Clojure Lispeln
formatstring -f items Windows PowerShell .NETZ
[NSString stringWithFormat:formatstring, items] Ziel c (NSString * nur) C
String(format:formatstring, items) Swift (Stiftung) C
string.format(formatstring, items)
(formatstring):format(items)
Lua C
WRITE (outputstring, formatstring) items Fortran Fortran
put string(string) edit(items)(format) PL/I PL/I (ähnlich Fortran)
String.format(formatstring, items) Kobra .NETZ
format formatstring items Tcl C
formatnumbersitems oder formatstring ⎕FMT items APL APL
format!(formatstring, items) Rost[22] Python
// Example in C#
String.Format("My {0} costs {1:C2}", "pen", 19.99); // returns "My pen costs $19.99"
// Example in Object Pascal (Delphi)
Format('My %s costs $%2f', ['pen', 19.99]);         // returns "My pen costs $19.99"
// Example in Java
String.format("My %s costs $%2f", "pen", 19.99);    // returns "My pen costs $19.99"
# Examples in Raku
sprintf "My %s costs $%.2f", "pen", 19.99;          # returns "My pen costs $19.99"
1.fmt("%04d");                                       # returns "0001"
# Example in Python
"My %s costs $%.2f" % ("pen", 19.99);                #  returns "My pen costs $19.99"
"My {0} costs ${1:.2f}".format("pen", 19.99);        #  returns "My pen costs $19.99"
#Example in Python 3.6+
pen = "pen"
f"My {pen} costs {19.99}"                                          #returns "My pen costs 19.99"
; Example in Scheme
(format "My ~a costs $~1,2F" "pen" 19.99)           ;  returns "My pen costs $19.99"
/* example in PL/I */
put string(some_string) edit('My ', 'pen', ' costs', 19.99)(a,a,a,p'$$$V.99')
/* returns "My pen costs $19.99" */

Ungleichheit[edit]

Testet, ob zwei Zeichenfolgen ungleich sind. Siehe auch #Gleichstellung.

Format Sprachen
string1 ne string2, or string1 NE string2 ALGOL 68 – Hinweis: der Betreiber "ne"ist buchstäblich in Fett gedruckt Typ-Schriftart.
string1 /= string2 ALGOL 68, Ada, Erlang, Fortran, Haskell
string1 <> string2 BASIC, VB, VB .NET, Pascal, Object Pascal (Delphi), OCaml, PHP, Seed7, Standard ML, F#, COBOL, Cobra, Python 2 (veraltet)
string1 # string2 BASIC (einige Implementierungen)
string1 ne string2 Perl, Raku
(string<> string1 string2) Schema (SRFI 13)
(string/= string1 string2) Gemeinsame Lisp
(string/= string1 string2) ISLISP
(not= string1 string2) Clojure
string1 != string2 C++ (STL), C#, Go, JavaScript (nicht ähnlich), PHP (nicht ähnlich), Python, Ruby, Rust,[10]Swift, D, Mathematica
string1 !== string2 JavaScript, PHP
string1 = string2 Rexx
string1 ¬= string2 PL/I
test string1 != string2, or
[ string1 != string2 ]
Bourne-Muschel
string1 -ne string2, or
-not [string]::Equals(string1, string2)
Windows PowerShell
string1 ~= string2 Lua, Smalltalk
string1string2 APL
string1.ne(string2) Rost[10]
// Example in C#
"hello" != "world"    // returns true
' Example in Visual Basic
"hello" <> "world"    '  returns true
;; Example in Clojure
(not= "hello" "world")  ; ⇒ true
# Example in Perl 5
'hello' ne 'world'      # returns 1
# Example in Raku
'hello' ne 'world'      # returns True
# Example in Windows PowerShell
"hello" -ne "world"   #  returns true

Index[edit]

sehen #Finden

Index von[edit]

sehen #Finden

anweisung[edit]

sehen #Finden

instrrev[edit]

sehen #rfind

beitreten[edit]

Definition join(separator, list_of_strings) gibt eine Liste von Strings zurück, die mit einem Trennzeichen verbunden sind
Beschreibung Verbindet die Liste der Zeichenfolgen zu einer neuen Zeichenfolge, wobei die Trennzeichenfolge zwischen den einzelnen Teilzeichenfolgen liegt. Gegenteil von Teilt.
Verwandt sprintf
Format Sprachen
std.string.join(array_of_strings, separator) D
string:join(list_of_strings, separator) Erlang
join(separator, list_of_strings) Perl, PHP, Raku
implode(separator, array_of_strings) PHP
separator.join(sequence_of_strings) Python, Swift 1.x
array_of_strings.join(separator) Rubin, JavaScript, Raku, Rust[23]
(string-join array_of_strings separator) Schema (SRFI 13)
(format nil "~{~a~^separator~}" array_of_strings) Gemeinsame Lisp
(clojure.string/join separator list_of_strings)
(apply str (interpose separator list_of_strings))
Clojure
strings.Join(array_of_strings, separator) gehen
join(array_of_strings, separator) Samen7
String.concat separator list_of_strings OCaml
String.concatWith separator list_of_strings Standard-ML
Data.List.intercalate separator list_of_strings Haskell (GHC 6.8+)
Join(array_of_strings, separator) VB
String.Join(separator, array_of_strings) VB.NET, C#, F#
String.join(separator, array_of_strings) Java 8+
&{$OFS=$separator; "$array_of_strings"}, or
array_of_strings -join separator
Windows PowerShell
[array_of_strings componentsJoinedByString:separator] Ziel c (NSString * nur)
table.concat(table_of_strings, separator) Lua
{|String streamContents: [ :stream | collectionOfAnything asStringOn: stream delimiter: separator ]
collectionOfAnything joinUsing: separator
Smalltalk (Quietsch, Pharo)
array_of_strings.join(separator«, final_separator») Kobra
sequence_of_strings.joinWithSeparator(separator) Schnell 2.x
1↓∊separatorlist_of_strings APL
// Example in C#
String.Join("-", {"a", "b", "c"})  // "a-b-c"
" Example in Smalltalk "
#('a' 'b' 'c') joinUsing: '-'      " 'a-b-c' "
# Example in Perl 5
join( '-', ('a', 'b', 'c'));       # 'a-b-c'
# Example in Raku
.join('-');       # 'a-b-c'
# Example in Python
"-".join(["a", "b", "c"])          #  'a-b-c'
# Example in Ruby
["a", "b", "c"].join("-")          #  'a-b-c'
; Example in Scheme
(use-modules (srfi srfi-13))
(string-join '("a" "b" "c") "-")   ;  "a-b-c"

letzterindexvon[edit]

sehen #rfind

links[edit]

Definition left(string,n) gibt Zeichenfolge zurück
Beschreibung Gibt die linke zurück n Teil einer Schnur. Wenn n größer als die Länge des Strings ist, geben die meisten Implementierungen den gesamten String zurück (Ausnahmen existieren – siehe Codebeispiele). Beachten Sie, dass es bei Codierungen mit variabler Länge wie UTF-8, UTF-16 oder Shift-JIS erforderlich sein kann, Zeichenfolgenpositionen am Ende zu entfernen, um ungültige Zeichenfolgen zu vermeiden.
Format Sprachen
string (string'First .. string'First + n - 1) Ada
substr(string, 0, n) AWK (ändert String), Perl, PHP, Raku
LEFT$(string,n) BASIC, VB
left(string,n) VB, FreeBASIC, Ingres, Pick Basic
strncpy(string2, string, n) C-Standardbibliothek
string.substr(0,n) C++ (STL), Raku
[string substringToIndex:n] Ziel c (NSString * nur)
(apply str (take n string)) Clojure
string[0 .. n] D[24]
string:substr(string, start, length) Erlang
(subseq string 0 n) Gemeinsame Lisp
string[:n] Cobra, Go, Python
left(string,n «,padchar») Rexx, Erlang
string[0, n]
string[0..n - 1]
Rubin
string[1, n] Wählen Sie Basic
string[ .. n] Samen7
string.Substring(0,n) VB.NET, C#, Windows PowerShell, F#
leftstr(string, n) Pascal, Objektpascal (Delphi)
copy (string,1,n) Turbo-Pascal
string.substring(0,n) Java,[25]JavaScript
(string-take string n) Schema (SRFI 13)
take n string Haskell
String.extract (string, n, NONE) Standard-ML
String.sub string 0 n OCaml[26]
string.[..n] F#
string.sub(string, 1, n)
(string):sub(1, n)
Lua
string first: n Smalltalk (Quietsch, Pharo)
string(:n) Fortran
StringTake[string, n] Mathematik[27]
string («FUNCTION» LENGTH(string) - n:n) COBOL
string.substring(0, n) Kobra
nstring. APL
string[0..n]
string[..n]
string.get(0..n)
string.get(..n)
Rost[28]
# Example in Raku
"Hello, there!".substr(0, 6);  # returns "Hello,"
/* Examples in Rexx */
left("abcde", 3)         /* returns "abc"      */
left("abcde", 8)         /* returns "abcde   " */
left("abcde", 8, "*")    /* returns "abcde***" */
; Examples in Scheme
(use-modules (srfi srfi-13))
(string-take "abcde", 3) ;  returns "abc" 
(string-take "abcde", 8) ;  error
' Examples in Visual Basic
Left("sandroguidi", 3)   '  returns "san" 
Left("sandroguidi", 100) '  returns "sandroguidi"

len[edit]

sehen #Länge

Länge[edit]

Definition length(string) gibt eine ganze Zahl zurück
Beschreibung Gibt die Länge eines Strings zurück (ohne den Nullabschluss oder andere interne Strukturinformationen des Strings zu zählen). Ein leerer String gibt eine Länge von 0 zurück.
Format Kehrt zurück Sprachen
string'Length Ada
UPB string ALGOL 68
length(string) Ingres, Perl 5, Pascal, Object Pascal (Delphi), Rexx, Seed7, SQL, PL/I
len(string) BASIC, FreeBASIC, Python, Go, Pick Basic
length(string), string:len(string) Erlang
Len(string) VB, Pick Basic
string.Length Anzahl der UTF-16-Codeeinheiten VB.NET, C#, Windows PowerShell, F#
chars(string)
string.chars
Anzahl Grapheme (NFG) Raku
codes(string)
string.codes
Anzahl Unicode-Codepunkte Raku
string.size OR string.length Anzahl Bytes[29] Rubin
strlen(string) Anzahl Bytes C, PHP
string.length() C++ (STL)
string.length Cobra, D, JavaScript
string.length() Anzahl der UTF-16-Codeeinheiten Java
(string-length string) Scheme
(length string) Common Lisp, ISLISP
(count string) Clojure
String.length string OCaml
size string Standard ML
length string Anzahl Unicode-Codepunkte Haskell
string.length Anzahl der UTF-16-Codeeinheiten Ziel c (NSString * nur)
string.characters.count Anzahl von Charakteren Schnell (2.x)
count(string) Anzahl von Charakteren Schnell (1.2)
countElements(string) Anzahl von Charakteren Schnell (1.0–1.1)
string.len(string)
(string):len()
#string
Lua
string size Smalltalk
LEN(string), or LEN_TRIM(string) Fortran
StringLength[string] Mathematica
«FUNCTION» LENGTH(string) oder

«FUNCTION» BYTE-LENGTH(string)

Anzahl Zeichen bzw. Anzahl Bytes COBOL
string length string eine Dezimalzeichenfolge, die die Anzahl der Zeichen angibt Tcl
string APL
string.len() Anzahl Bytes Rost[30]
string.chars().count() Anzahl Unicode-Codepunkte Rost[31]
// Examples in C#
"hello".Length;      // returns 5
"".Length;           // returns 0
# Examples in Erlang
string:len("hello"). %  returns 5
string:len("").      %  returns 0
# Examples in Perl 5
length("hello");     #  returns 5
length("");          #  returns 0
# Examples in Raku
"🏳️‍🌈".chars; chars "🏳️‍🌈";      # both return 1
"🏳️‍🌈".codes; codes "🏳️‍🌈";      # both return 4
"".chars; chars "";          # both return 0
"".codes; codes "";          # both return 0
' Examples in Visual Basic
Len("hello")         '  returns 5
Len("")              '  returns 0
//Examples in Objective-C
[@"hello" Length]   //returns 5
[@"" Length]   //returns 0
-- Examples in Lua
("hello"):len() -- returns 5
#"" -- returns 0

Lokalisieren[edit]

sehen #Finden

Kleinbuchstaben[edit]

Definition lowercase(string) gibt Zeichenfolge zurück
Beschreibung Gibt die Zeichenfolge in Kleinbuchstaben zurück.
Format Sprachen
LCase(string) VB
lcase(string) FreeBASIC
lc(string) Perl, Raku
string.lc Raku
tolower(char) C[32]
std.string.toLower(string) D
transform(string.begin(), string.end(), result.begin(), ::tolower)[33] C++[34]
lowercase(string) Objektpascal (Delphi)
strtolower(string) PHP
lower(string) Samen7
echo "string" | tr 'A-Z' 'a-z' Unix
string.lower() Python
downcase(string) Wählen Sie Basic
string.downcase Rubin[35]
strings.ToLower(string) gehen
(string-downcase string) Schema (R6RS), Common Lisp
(lower-case string) Clojure
String.lowercase string OCaml
String.map Char.toLower string Standard-ML
map Char.toLower string Haskell
string.toLowerCase() Java, JavaScript
to_lower(string) Erlang
string.ToLower() VB.NET, C#, Windows PowerShell, F#
string.lowercaseString Ziel c (NSString * nur), Swift (Stiftung)
string.lower(string)
(string):lower()
Lua
string asLowercase Smalltalk
LOWER(string) SQL
lowercase(string) PL/I[8]
ToLowerCase[string] Mathematik
«FUNCTION» LOWER-CASE(string) COBOL
string.toLower Kobra
string tolower string Tcl
string.to_lowercase() Rost[36]
// Example in C#
"Wiki means fast?".ToLower();        // "wiki means fast?"
; Example in Scheme
(use-modules (srfi srfi-13))
(string-downcase "Wiki means fast?") ;  "wiki means fast?"
/* Example in C */
#include 
#include 
int main(void) {
    char string[] = "Wiki means fast?";
    int i;
    for (i = 0; i < sizeof(string) - 1; ++i) {
        /* transform characters in place, one by one */ 
        string[i] = tolower(string[i]);
    }
    puts(string);                       /* "wiki means fast?" */
    return 0;
}
# Example in Raku
"Wiki means fast?".lc;             # "wiki means fast?"

Mitte[edit]

sehen #Teilzeichenfolge

Partition[edit]

Definition .partition(Separator) gibt die Teilzeichenfolge vor dem Trennzeichen zurück; der Separator; dann die Teilzeichenfolge nach dem Trennzeichen.
Beschreibung Teilt die angegebene Zeichenfolge durch das Trennzeichen und gibt die drei Teilzeichenfolgen zurück, die zusammen das Original ergeben.
Format Sprachen Kommentare
string.partition(separator) Python, Rubin (1.9+)
lists:partition(pred, string) Erlang
split /(separator)/, string, 2 Perl 5
split separator, string, 2
string.split( separator, 2 )
Raku Trennzeichen muss kein regulärer Ausdruck sein
# Examples in Python
"Spam eggs spam spam and ham".partition('spam')   # ('Spam eggs ', 'spam', ' spam and ham')
"Spam eggs spam spam and ham".partition('X')      # ('Spam eggs spam spam and ham', "", "")
# Examples in Perl 5 / Raku
split /(spam)/, 'Spam eggs spam spam and ham' ,2;   # ('Spam eggs ', 'spam', ' spam and ham');
split /(X)/, 'Spam eggs spam spam and ham' ,2;      # ('Spam eggs spam spam and ham');

ersetzen[edit]

Definition replace(string, find, replace) gibt Zeichenfolge zurück
Beschreibung Gibt eine Zeichenfolge mit zurück finden Vorkommen geändert zu ersetzen.
Format Sprachen
changestr(find, string, replace) Rexx
std.string.replace(string, find, replace) D
Replace(string, find, replace) VB
replace(string, find, replace) Samen7
change(string, find, replace) Wählen Sie Basic
string.Replace(find, replace) C#, F#, VB.NET
str_replace(find, replace, string) PHP
re:replace(string, find, replace, «{return, list}») Erlang
string.replace(find, replace) Cobra, Java (1.5+), Python, Rust[37]
string.replaceAll(find_regex, replace)[38] Java
string.gsub(find, replace) Rubin
string =~ s/find_regex/replace/g[38] Perl 5
string.subst(find, replace, :g) Raku
string.replace(find, replace, "g") [39] or
string.replace(/find_regex/g, replace)[38]
JavaScript
echo "string" | sed 's/find_regex/replace/g'[38] Unix
string.replace(find, replace), or
string -replace find_regex, replace[38]
Windows PowerShell
Str.global_replace (Str.regexp_string find) replace string OCaml
[string stringByReplacingOccurrencesOfString:find withString:replace] Ziel c (NSString * nur)
string.stringByReplacingOccurrencesOfString(find, withString:replace) Swift (Stiftung)
string.gsub(string, find, replace)
(string):gsub(find, replace)
Lua
string copyReplaceAll: find with: replace Smalltalk (Quietschen, Pharo)
string map {find replace} string Tcl
StringReplace[string, find -> replace] Mathematik
strings.Replace(string, find, replace, -1) gehen
INSPECT string REPLACING ALL/LEADING/FIRST find BY replace COBOL
find_regex ⎕R replace_regexstring APL
// Examples in C#
"effffff".Replace("f", "jump");     // returns "ejumpjumpjumpjumpjumpjump"
"blah".Replace("z", "y");           // returns "blah"
// Examples in Java
"effffff".replace("f", "jump");     // returns "ejumpjumpjumpjumpjumpjump"
"effffff".replaceAll("f*", "jump"); // returns "ejump"
// Examples in Raku
"effffff".subst("f", "jump", :g);    # returns "ejumpjumpjumpjumpjumpjump"
"blah".subst("z", "y", :g);          # returns "blah"
' Examples in Visual Basic
Replace("effffff", "f", "jump")     '  returns "ejumpjumpjumpjumpjumpjump"
Replace("blah", "z", "y")           '  returns "blah"
# Examples in Windows PowerShell
"effffff" -replace "f", "jump"      #  returns "ejumpjumpjumpjumpjumpjump"
"effffff" -replace "f*", "jump"     #  returns "ejump"

umkehren[edit]

Definition reverse(string)
Beschreibung Kehrt die Reihenfolge der Zeichen in der Zeichenfolge um.
Format Sprachen
reverse string Perl 5, Haskell
flip string
string.flip
Raku
lists:reverse(string) Erlang
strrev(string) PHP
string[::-1] Python
(string-reverse string) Schema (SRFI 13)
(reverse string) Gemeinsame Lisp
string.reverse Ruby, D (ändert die Zeichenfolge)
new StringBuilder(string).reverse().toString() Java
std::reverse(string.begin(), string.end()); C++ (std::string nur, ändert Zeichenfolge)
StrReverse(string) VB
string.Reverse().ToString() VB.NET, C#
implode (rev (explode string)) Standard-ML
string.split("").reverse().join("") JavaScript
string.reverse(string)
(string):reverse()
Lua
string reverse Smalltalk
StringReverse[string] Mathematik
reverse(string) PL/I
«FUNCTION» REVERSE(string) COBOL
string.toCharArray.toList.reversed.join() Kobra
String(string.characters.reverse()) Schnell (2.x)
String(reverse(string)) Schnell (1.2)
string reverse string Tcl
string APL
string.chars().rev().collect::() Rost[40]
" Example in Smalltalk "
'hello' reversed             " returns 'olleh' "
# Example in Perl 5
reverse "hello"              # returns "olleh"
# Example in Raku
"hello".flip                 # returns "olleh"
# Example in Python
"hello"[::-1]                # returns "olleh"
; Example in Scheme
(use-modules (srfi srfi-13))
(string-reverse "hello")     ; returns "olleh"

rfind[edit]

Definition rfind(string,substring) gibt ganze Zahl zurück
Beschreibung Gibt die Position des Anfangs des letzten Vorkommens von zurück Teilzeichenfolge in Schnur. Wenn die Teilzeichenfolge nicht gefunden wird, geben die meisten dieser Routinen einen ungültigen Indexwert zurück – -1, wenn Indizes 0-basiert sind, 0, wenn sie 1-basiert sind – oder einen Wert, der als Boolean FALSE interpretiert wird.
Verwandt anweisung
Format Sprachen Wenn nicht gefunden
InStrRev(«startposstring,substring) VB gibt 0 zurück
instrrev(«startposstring,substring) FreeBASIC gibt 0 zurück
rindex(string,substring«,startpos») Perl 5 gibt −1 . zurück
rindex(string,substring«,startpos»)
string.rindex(substring«,startpos»)
Raku gibt Nil zurück
strrpos(string,substring«,startpos») PHP gibt FALSE zurück
string.rfind(substring«,startpos») C++ (STL) gibt std::string::npos zurück
std.string.rfind(string, substring) D gibt −1 . zurück
string.rfind(substring«,startpos«, endpos»») Python gibt −1 . zurück
string.rindex(substring«,startpos«, endpos»») erhöht ValueError
rpos(string, substring«,startpos») Samen7 gibt 0 zurück
string.rindex(substring«,startpos») Rubin gibt null zurück
strings.LastIndex(string, substring) gehen gibt −1 . zurück
string.lastIndexOf(substring«,startpos») Java, JavaScript gibt −1 . zurück
string.LastIndexOf(substring«,startpos«, charcount»») VB.NET, C#, Windows PowerShell, F# gibt −1 . zurück
(search substring string :from-end t) Gemeinsame Lisp gibt NIL zurück
[string rangeOfString:substring options:NSBackwardsSearch].location Ziel c (NSString * nur) gibt NSNotFound zurück
Str.search_backward (Str.regexp_string substring) string (Str.length string - 1) OCaml wirft Not_found . auf
string.match(string, '.*()'..substring)
string:match('.*()'..substring)
Lua gibt null zurück
Ada.Strings.Unbounded.Index(Source => string, Pattern => substring,
Going => Ada.Strings.Backward)
Ada gibt 0 zurück
string.lastIndexOf(substring«,startpos«, charcount»») Kobra gibt −1 . zurück
string lastIndexOfString:substring Smalltalk gibt 0 zurück
string last substring string startpos Tcl gibt −1 . zurück
(⌽substring⍷'string')⍳1 APL gibt −1 . zurück
string.rfind(substring) Rost[41] kehrt zurück None
; Examples in Common Lisp
(search "e" "Hello mate" :from-end t)     ;  returns 9
(search "z" "word" :from-end t)           ;  returns NIL
// Examples in C#
"Hello mate".LastIndexOf("e");           // returns 9
"Hello mate".LastIndexOf("e", 4);        // returns 1
"word".LastIndexOf("z");                 // returns -1
# Examples in Perl 5
rindex("Hello mate", "e");               # returns 9
rindex("Hello mate", "e", 4);            # returns 1
rindex("word", "z");                     # returns -1
# Examples in Raku
"Hello mate".rindex("e");                # returns 9
"Hello mate".rindex("e", 4);             # returns 1
"word".rindex('z');                      # returns Nil
' Examples in Visual Basic
InStrRev("Hello mate", "e")              '  returns 10
InStrRev(5, "Hello mate", "e")           '  returns 2
InStrRev("word", "z")                    '  returns 0

rechts[edit]

Definition right(string,n) gibt Zeichenfolge zurück
Beschreibung Gibt das Recht zurück n Teil einer Schnur. Wenn n größer als die Länge des Strings ist, geben die meisten Implementierungen den gesamten String zurück (Ausnahmen existieren – siehe Codebeispiele).
Format Sprachen
string (string'Last - n + 1 .. string'Last) Ada
Right(string,n) VB
RIGHT$(string,n) BASIC
right(string,n) FreeBASIC, Ingres, Pick Basic
strcpy(string2, string+n) (n darf nicht größer sein als die Länge von Schnur) C
string.Substring(string.Length()-n) C#
string[len(string)-n:] gehen
string.substring(string.length()-n) Java
string.slice(-n) JavaScript[42]
right(string,n «,padchar») Rexx, Erlang
substr(string,-n) Perl 5, PHP
substr(string,*-n)
string.substr(*-n)
Raku
string[-n:] Kobra, Python
string[n] Wählen Sie Basic
(string-take-right string n) Schema (SRFI 13)
string[-n..-1] Rubin
string[$-n .. $] D[43]
String.sub string (String.length string - n) n OCaml[26]
string.sub(string, -n)
(string):sub(-n)
Lua
string last: n Smalltalk (Quietsch, Pharo)
StringTake[string, -n] Mathematik[27]
string (1:n) COBOL
¯nstring. APL
string[n..]
string.get(n..)
Rost[28]
// Examples in Java; extract rightmost 4 characters
String str = "CarDoor";
str.substring(str.length()-4); // returns 'Door'
# Examples in Raku
"abcde".substr(*-3);          # returns "cde"
"abcde".substr(*-8);          # 'out of range' error
/* Examples in Rexx */
right("abcde", 3)              /* returns "cde"      */
right("abcde", 8)              /* returns "   abcde" */
right("abcde", 8, "*")         /* returns "***abcde" */
; Examples in Scheme
(use-modules (srfi srfi-13))
(string-take-right "abcde", 3) ;  returns "cde" 
(string-take-right "abcde", 8) ;  error
' Examples in Visual Basic
Right("sandroguidi", 3)        '  returns "idi" 
Right("sandroguidi", 100)      '  returns "sandroguidi"

rpartition[edit]

Definition .rpartition(Separator) Sucht nach dem Trennzeichen von rechts nach links innerhalb der Zeichenfolge und gibt dann die Teilzeichenfolge vor dem Trennzeichen zurück; der Separator; dann die Teilzeichenfolge nach dem Trennzeichen.
Beschreibung Teilt die angegebene Zeichenfolge durch das am weitesten rechts stehende Trennzeichen und gibt die drei Teilzeichenfolgen zurück, die zusammen das Original ergeben.
Format Sprachen
string.rpartition(separator) Python, Ruby
# Examples in Python
"Spam eggs spam spam and ham".rpartition('spam')  ### ('Spam eggs spam ', 'spam', ' and ham')
"Spam eggs spam spam and ham".rpartition('X')     ### ("", "", 'Spam eggs spam spam and ham')

Scheibe[edit]

sehen #Teilzeichenfolge

Teilt[edit]

Definition .Teilt(Separator[, limit]) teilt einen String am Trennzeichen, optional nur bis zu einer begrenzten Anzahl von Teilstrings
Beschreibung Teilt die angegebene Zeichenfolge nach Vorkommen des Trennzeichens (selbst eine Zeichenfolge) und gibt eine Liste (oder ein Array) der Teilzeichenfolgen zurück. Wenn Grenze ist gegeben, nach Grenze – 1 Trennzeichen gelesen wurden, wird der Rest des Strings zum letzten Teilstring gemacht, unabhängig davon, ob er Trennzeichen enthält. Die Scheme- und Erlang-Implementierungen sind ähnlich, unterscheiden sich jedoch in mehrfacher Hinsicht. JavaScript unterscheidet sich auch darin, dass es schneidet, den Rest des Strings nicht in das letzte Element einfügt. Siehe das Beispiel hier. Die Cobra-Implementierung verwendet standardmäßig Whitespace. Gegenteil von beitreten.
Format Sprachen
split(/separator/, string«, limit») Perl 5
split(separator, string«, limit»)
string.split(separator, «limit»)
Raku
explode(separator, string«, limit») PHP
string.split(separator«, limit-1») Python
string.split(separator«, limit») JavaScript, Java, Ruby
string:tokens(string, sepchars) Erlang
strings.Split(string, separator)
strings.SplitN(string, separator, limit)
gehen
(string-tokenize string« charset« start« end»»») Schema (SRFI 13)
Split(string, sepchars«, limit») VB
string.Split(sepchars«, limit«, options»») VB.NET, C#, F#
string -split separator«, limit«, options»» Windows PowerShell
Str.split (Str.regexp_string separator) string OCaml
std.string.split(string, separator) D
[string componentsSeparatedByString:separator] Ziel c (NSString * nur)
string.componentsSeparatedByString(separator) Swift (Stiftung)
TStringList.Delimiter, TStringList.DelimitedText Objekt Pascal
StringSplit[string, separator«, limit»] Mathematik
string.split«(sepchars«, limit«, options»»)» Kobra
split string separator Tcl
(separatorstring)⊂string oder separator(≠⊆⊢)string in APL2 bzw. Dyalog APL 16.0 APL
string.split(separator)

string.split(limit, separator)

Rost[44]
// Example in C#
"abc,defgh,ijk".Split(',');                 // {"abc", "defgh", "ijk"}
"abc,defgh;ijk".Split(',', ';');            // {"abc", "defgh", "ijk"}
% Example in Erlang
string:tokens("abc;defgh;ijk", ";").        %  ["abc", "defgh", "ijk"]
// Examples in Java
"abc,defgh,ijk".split(",");                 // {"abc", "defgh", "ijk"}
"abc,defgh;ijk".split(",|;");               // {"abc", "defgh", "ijk"}
{ Example in Pascal }
var
  lStrings: TStringList;
  lStr: string;
begin
  lStrings := TStringList.Create;
  lStrings.Delimiter := ',';
  lStrings.DelimitedText := 'abc,defgh,ijk';
  lStr := lStrings.Strings[0]; // 'abc'
  lStr := lStrings.Strings[1]; // 'defgh'
  lStr := lStrings.Strings[2]; // 'ijk'
end;
# Examples in Perl 5
split(/spam/, 'Spam eggs spam spam and ham'); # ('Spam eggs ', ' ', ' and ham')
split(/X/, 'Spam eggs spam spam and ham');    # ('Spam eggs spam spam and ham')
# Examples in Raku
'Spam eggs spam spam and ham'.split(/spam/);  # (Spam eggs     and ham)
split(/X/, 'Spam eggs spam spam and ham');    # (Spam eggs spam spam and ham)

sprintf[edit]

sehen #Format

Streifen[edit]

sehen #trimmen

strcmp[edit]

sehen #Vergleichen (Ganzzahlergebnis)

Teilzeichenfolge[edit]

Definition substring(string, startpos, endpos) gibt Zeichenfolge zurück
substr(string, startpos, numChars) gibt Zeichenfolge zurück
Beschreibung Gibt eine Teilzeichenfolge von zurück Schnur zwischen ab startpos und Endpos, oder ab startpos der Länge numChars. Die resultierende Zeichenfolge wird abgeschnitten, wenn weniger als numChars Zeichen jenseits des Startpunkts. Endpos stellt den Index nach dem letzten Zeichen in der Teilzeichenfolge dar. Beachten Sie, dass es bei Codierungen mit variabler Länge wie UTF-8, UTF-16 oder Shift-JIS erforderlich sein kann, Zeichenfolgenpositionen am Ende zu entfernen, um ungültige Zeichenfolgen zu vermeiden.
Format Sprachen
string[startpos:endpos] ALGOL 68 (ändert den Basisindex)
string (startpos .. endpos) Ada (ändert den Basisindex)
Mid(string, startpos, numChars) VB
mid(string, startpos, numChars) FreeBASIC
string[startpos+(⍳numChars)-~⎕IO] APL
MID$(string, startpos, numChars) BASIC
substr(string, startpos, numChars) AWK (ändert String), Perl 5,[45][46]PHP[45][46]
substr(string, startpos, numChars)
string.substr(startpos, numChars)
Raku[47][48]
substr(string, startpos «,numChars, padChar») Rexx
string[startpos:endpos] Kobra, Python,[45][49]gehen
string[startpos, numChars] Wählen Sie Basic
string[startpos, numChars]
string[startpos .. endpos-1]
string[startpos ... endpos]
Rubin[45][49]
string[startpos .. endpos]
string[startpos len numChars]
Samen7
string.slice(startpos«, endpos») JavaScript[45][49]
string.substr(startpos«, numChars») C++ (STL), JavaScript
string.Substring(startpos, numChars) VB.NET, C#, Windows PowerShell, F#
string.substring(startpos«, endpos») Java, JavaScript
copy(string, startpos, numChars) Objektpascal (Delphi)
(substring string startpos endpos) Planen
(subseq string startpos endpos) Gemeinsame Lisp
(subseq string startpos endpos) ISLISP
String.sub string startpos numChars OCaml
substring (string, startpos, numChars) Standard-ML
string:sub_string(string, startpos, endpos)
string:substr(string, startpos, numChars)
Erlang
strncpy(result, string + startpos, numChars); C
string[startpos .. endpos+1] D
take numChars $ drop startpos string Haskell
[string substringWithRange:NSMakeRange(startpos, numChars)] Ziel c (NSString * nur)
string.[startpos..endpos] F#
string.sub(string, startpos, endpos)
(string):sub(startpos, endpos)
Lua[45][49]
string copyFrom: startpos to: endpos Smalltalk
string(startpos:endpos) Fortran
SUBSTRING(string FROM startpos «FOR numChars») SQL
StringTake[string, {startpos, endpos}] Mathematik[45][49]
string (startpos:numChars) COBOL
Saitenbereich Zeichenfolge startpos endpos Tcl
string[startpos..endpos]
string.get(startpos..endpos)
Rost[28]
// Examples in C#
"abc".Substring(1, 1):      // returns "b"
"abc".Substring(1, 2);      // returns "bc"
"abc".Substring(1, 6);      // error
;; Examples in Common Lisp
(subseq "abc" 1 2)          ; returns "b"
(subseq "abc" 2)            ; returns "c"
% Examples in Erlang
string:substr("abc", 2, 1). %  returns "b"
string:substr("abc", 2).    %  returns "bc"
# Examples in Perl 5
substr("abc", 1, 1);       #  returns "b"
substr("abc", 1);          #  returns "bc"
# Examples in Raku
"abc".substr(1, 1);        #  returns "b"
"abc".substr(1);           #  returns "bc"
# Examples in Python
"abc"[1:2]                 #  returns "b"
"abc"[1:3]                 #  returns "bc"
/* Examples in Rexx */
substr("abc", 2, 1)         /* returns "b"      */
substr("abc", 2)            /* returns "bc"     */
substr("abc", 2, 6)         /* returns "bc    " */
substr("abc", 2, 6, "*")    /* returns "bc****" */

Großbuchstaben[edit]

Definition uppercase(string) gibt Zeichenfolge zurück
Beschreibung Gibt die Zeichenfolge in Großbuchstaben zurück.
Format Sprachen
UCase(string) VB
ucase(string) FreeBASIC
toupper(string) AWK (ändert die Zeichenfolge)
uc(string) Perl, Raku
string.uc Raku
toupper(char) C (arbeitet an einem Zeichen)
for(size_t i = 0, len = strlen(string); i< len; i++) string[i] = toupper(string[i]);
for (char *c = string; *c != '