Funktionale Programmierung - Strings

EIN stringist eine Gruppe von Zeichen einschließlich Leerzeichen. Wir können sagen, dass es sich um ein eindimensionales Array von Zeichen handelt, das durch ein NULL-Zeichen ('\ 0') abgeschlossen wird. Ein String kann auch als vordefinierte Klasse angesehen werden, die von den meisten Programmiersprachen wie C, C ++, Java, PHP, Erlang, Haskell, Lisp usw. unterstützt wird.

Das folgende Bild zeigt, wie die Zeichenfolge "Tutorial" im Speicher aussehen wird.

Erstellen Sie einen String in C ++

Das folgende Programm ist ein Beispiel, das zeigt, wie eine Zeichenfolge in C ++ erstellt wird, einer objektorientierten Programmiersprache.

#include <iostream> 
using namespace std; 

int main () {    
   char greeting[20] = {'H', 'o', 'l', 'i', 'd', 'a', 'y', '\0'}; 
   cout << "Today is: "; 
   cout << greeting << endl; 
   return 0; 
}

Es wird die folgende Ausgabe erzeugt -

Today is: Holiday

String in Erlang

Das folgende Programm ist ein Beispiel, das zeigt, wie eine Zeichenfolge in Erlang erstellt wird, einer funktionalen Programmiersprache.

-module(helloworld).  
-export([start/0]).   
start() -> 
   Str = "Today is: Holiday",  
   io:fwrite("~p~n",[Str]).

Es wird die folgende Ausgabe erzeugt -

"Today is: Holiday"

String-Operationen in C ++

Unterschiedliche Programmiersprachen unterstützen unterschiedliche Methoden für Zeichenfolgen. Die folgende Tabelle zeigt einige vordefinierte Zeichenfolgenmethoden, die von C ++ unterstützt werden.

S.No. Methode & Beschreibung
1

Strcpy(s1,s2)

Es kopiert den String s2 in den String s1

2

Strcat(s1,s2)

Es fügt die Zeichenfolge s2 am Ende von s1 hinzu

3

Strlen(s1)

Es gibt die Länge des Strings s1 an

4

Strcmp(s1,s2)

Es gibt 0 zurück, wenn die Zeichenfolgen s1 und s2 gleich sind

5

Strchr(s1,ch)

Es gibt einen Zeiger auf das erste Vorkommen des Zeichens ch in der Zeichenfolge s1 zurück

6

Strstr(s1,s2)

Es gibt einen Zeiger auf das erste Vorkommen der Zeichenfolge s2 in der Zeichenfolge s1 zurück

Das folgende Programm zeigt, wie die oben genannten Methoden in C ++ verwendet werden können -

#include <iostream> 
#include <cstring> 
using namespace std; 

int main () {   
   char str1[20] = "Today is "; 
   char str2[20] = "Monday"; 
   char str3[20]; 
   int  len ;  
   strcpy( str3, str1); // copy str1 into str3 
   cout << "strcpy( str3, str1) : " << str3 << endl;  

   strcat( str1, str2); // concatenates str1 and str2 
   cout << "strcat( str1, str2): " << str1 << endl;  

   len = strlen(str1);  // String length after concatenation 
   cout << "strlen(str1) : " << len << endl; 
   return 0; 
}

Es wird die folgende Ausgabe erzeugt -

strcpy(str3, str1)   :  Today is 
strcat(str1, str2)   :  Today is Monday 
strlen(str1)         :  15

String-Operationen in Erlang

Die folgende Tabelle zeigt eine Liste vordefinierter Zeichenfolgenmethoden, die von Erlang unterstützt werden.

S.No. Methode & Beschreibung
1

len(s1)

Gibt die Anzahl der Zeichen in der angegebenen Zeichenfolge zurück.

2

equal(s1,s2)

Es gibt true zurück, wenn die Zeichenfolgen s1 und s2 gleich sind, andernfalls false

3

concat(s1,s2)

Es fügt die Zeichenfolge s2 am Ende der Zeichenfolge s1 hinzu

4

str(s1,ch)

Es gibt die Indexposition des Zeichens ch in der Zeichenfolge s1 zurück

5

str (s1,s2)

Es gibt die Indexposition von s2 in der Zeichenfolge s1 zurück

6

substr(s1,s2,num)

Diese Methode gibt die Zeichenfolge s2 von der Zeichenfolge s1 basierend auf der Startposition und der Anzahl der Zeichen von der Startposition zurück

7

to_lower(s1)

Diese Methode gibt eine Zeichenfolge in Kleinbuchstaben zurück

Das folgende Programm zeigt, wie die oben genannten Methoden in Erlang verwendet werden können.

-module(helloworld).  
-import(string,[concat/2]).  
-export([start/0]).  
   start() ->  
   S1 = "Today is ",  
   S2 = "Monday",  
   S3 = concat(S1,S2),  
   io:fwrite("~p~n",[S3]).

Es wird die folgende Ausgabe erzeugt -

"Today is Monday"