Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> MATLAB

MATLAB Strings meistern: Einfache Erstellung & Verwendung

Das Erstellen eines Zeichenketten-Strings ist in MATLAB sehr einfach. Tatsächlich haben wir es bereits oft verwendet. Zum Beispiel geben Sie an der Eingabeaufforderung Folgendes ein:

Live Demo
 my_string = 'Tutorials Point' 

MATLAB führt die Anweisung aus und gibt folgendes Ergebnis zurück:

 my_string = Tutorials Point 

MATLAB betrachtet alle Variablen als Arrays, und Strings werden als Zeichen-Arrays betrachtet. Lassen Sie uns den Befehl whos verwenden, um die oben erstellte Variable zu überprüfen:

 whos 

MATLAB führt die Anweisung aus und gibt folgendes Ergebnis zurück:

 Name Size Bytes Class Attributes my_string 1x16 32 char 

Interessanterweise können Sie numerische Konvertierungsfunktionen wie uint8 oder uint16 verwenden, um die Zeichen im String in ihre numerischen Codes umzuwandeln. Die Funktion char konvertiert den Ganzzahl-Vektor zurück in Zeichen:

Beispiel

Erstellen Sie eine Skriptdatei und geben Sie folgenden Code ein:

Live Demo
 my_string = 'Tutorial''s Point'; str_ascii = uint8(my_string) % 8-Bit-ASCII-Werte str_back_to_char= char(str_ascii) str_16bit = uint16(my_string) % 16-Bit-ASCII-Werte str_back_to_char = char(str_16bit) 

Beim Ausführen der Datei wird folgendes Ergebnis angezeigt:

 str_ascii = 84 117 116 111 114 105 97 108 39 115 32 80 111 105 110 116 str_back_to_char = Tutorial's Point str_16bit = 84 117 116 111 114 105 97 108 39 115 32 80 111 105 110 116 str_back_to_char = Tutorial's Point 

Rechteckige Zeichen-Arrays

Die bisher besprochenen Strings sind eindimensionale Zeichen-Arrays; wir müssen jedoch mehrdimensionale Textdaten in unseren Programmen speichern. Dies wird durch das Erstellen rechteckiger Zeichen-Arrays erreicht.

Der einfachste Weg, ein rechteckiges Zeichen-Array zu erstellen, besteht darin, zwei oder mehr eindimensionale Zeichen-Arrays entweder vertikal oder horizontal zu verketten, wie es erforderlich ist.

Sie können Strings auf zwei Arten vertikal kombinieren:

Beispiel

Erstellen Sie eine Skriptdatei und geben Sie folgenden Code ein:

Live Demo
 doc_profile = ['Zara Ali '; ... 'Sr. Surgeon '; ... 'R N Tagore Cardiology Research Center'] doc_profile = char('Zara Ali', 'Sr. Surgeon', ... 'RN Tagore Cardiology Research Center') 

Beim Ausführen der Datei wird folgendes Ergebnis angezeigt:

 doc_profile = Zara Ali Sr. Surgeon R N Tagore Cardiology Research Center doc_profile = Zara Ali Sr. Surgeon RN Tagore Cardiology Research Center 

Sie können Strings auf zwei Arten horizontal kombinieren:

Beispiel

Erstellen Sie eine Skriptdatei und geben Sie folgenden Code ein:

Live Demo
 name = 'Zara Ali '; position = 'Sr. Surgeon '; worksAt = 'R N Tagore Cardiology Research Center'; profile = [name ', ' position ', ' worksAt] profile = strcat(name, ', ', position, ', ', worksAt) 

Beim Ausführen der Datei wird folgendes Ergebnis angezeigt:

 profile = Zara Ali , Sr. Surgeon , R N Tagore Cardiology Research Center profile = Zara Ali,Sr. Surgeon,R N Tagore Cardiology Research Center 

Strings in ein Zell-Array zusammenfassen

Aus unserer vorherigen Diskussion geht hervor, dass das Kombinieren von Strings unterschiedlicher Länge mühsam sein kann, da alle Strings im Array die gleiche Länge haben müssen. Wir haben Leerzeichen am Ende der Strings verwendet, um ihre Länge anzugleichen.

Eine effizientere Methode, Strings zu kombinieren, besteht darin, das resultierende Array in ein Zell-Array umzuwandeln.

MATLAB-Zell-Arrays können Daten unterschiedlicher Größe und Typen in einem Array speichern. Zell-Arrays bieten eine flexiblere Möglichkeit, Strings variabler Länge zu speichern.

Die Funktion cellstr konvertiert ein Zeichen-Array in ein Zell-Array von Strings.

Beispiel

Erstellen Sie eine Skriptdatei und geben Sie folgenden Code ein:

Live Demo
 name = 'Zara Ali '; position = 'Sr. Surgeon '; worksAt = 'R N Tagore Cardiology Research Center'; profile = char(name, position, worksAt); profile = cellstr(profile); disp(profile) 

Beim Ausführen der Datei wird folgendes Ergebnis angezeigt:

 { [1,1] = Zara Ali [2,1] = Sr. Surgeon [3,1] = R N Tagore Cardiology Research Center } 

String-Funktionen in MATLAB

MATLAB bietet zahlreiche String-Funktionen zum Erstellen, Kombinieren, Parsen, Vergleichen und Manipulieren von Strings.

Die folgende Tabelle bietet eine kurze Beschreibung der String-Funktionen in MATLAB:

Funktion Zweck
Funktionen zum Speichern von Text in Zeichen-Arrays, Kombinieren von Zeichen-Arrays usw.
blanks Erstellt String aus Leerzeichen
cellstr Erstellt Zell-Array von Strings aus Zeichen-Array
char Konvertiert in Zeichen-Array (String)
iscellstr Prüft, ob Eingabe ein Zell-Array von Strings ist
ischar Prüft, ob Element ein Zeichen-Array ist
sprintf Formatiert Daten in String
strcat Verkettet Strings horizontal
strjoin Vereinigt Strings in Zell-Array zu einzelnen String
Funktionen zum Identifizieren von String-Teilen, Suchen und Ersetzen von Teilstrings
ischar Prüft, ob Element ein Zeichen-Array ist
isletter Array-Elemente, die alphabetische Buchstaben sind
isspace Array-Elemente, die Leerzeichen sind
isstrprop Prüft, ob String eine bestimmte Kategorie hat
sscanf Liest formatierte Daten aus String
strfind Findet einen String in einem anderen
strrep Findet und ersetzt Teilstring
strsplit Teilt String an angegebenem Trennzeichen
strtok Ausgewählte Teile eines Strings
validatestring Prüft Gültigkeit von Text-String
symvar Ermittelt symbolische Variablen in Ausdruck
regexp Regulärer Ausdruck abgleichen (Groß-/Kleinschreibung beachten)
regexpi Regulärer Ausdruck abgleichen (Groß-/Kleinschreibung ignorieren)
regexprep String mit regulärem Ausdruck ersetzen
regexptranslate String in regulären Ausdruck übersetzen
Funktionen zum String-Vergleich
strcmp Vergleicht Strings (Groß-/Kleinschreibung beachten)
strcmpi Vergleicht Strings (Groß-/Kleinschreibung ignorieren)
strncmp Vergleicht erste n Zeichen von Strings (Groß-/Kleinschreibung beachten)
strncmpi Vergleicht erste n Zeichen von Strings (Groß-/Kleinschreibung ignorieren)
Funktionen zum Ändern von Groß-/Kleinschreibung, Erstellen oder Entfernen von Leerzeichen
deblank Entfernt nachgestellte Leerzeichen am Ende des Strings
strtrim Entfernt führende und nachgestellte Leerzeichen aus String
lower Konvertiert String in Kleinbuchstaben
upper Konvertiert String in Großbuchstaben
strjust Richtet Zeichen-Array aus

Beispiele

Die folgenden Beispiele veranschaulichen einige der oben genannten String-Funktionen:

Strings formatieren

Erstellen Sie eine Skriptdatei und geben Sie folgenden Code ein:

Live Demo
 A = pi*1000*ones(1,5); sprintf(' %f \n %.2f \n %+.2f \n %12.2f \n %012.2f \n', A) 

Beim Ausführen der Datei wird folgendes Ergebnis angezeigt:

 ans = 3141.592654 3141.59 +3141.59 3141.59 000003141.59 

Strings verbinden

Erstellen Sie eine Skriptdatei und geben Sie folgenden Code ein:

Live Demo
 % Zell-Array von Strings str_array = {'red','blue','green', 'yellow', 'orange'}; % Verbinden der Strings im Zell-Array zu einem einzelnen String str1 = strjoin(str_array, "-") str2 = strjoin(str_array, ",") 

Beim Ausführen der Datei wird folgendes Ergebnis angezeigt:

 str1 = red-blue-green-yellow-orange str2 = red,blue,green,yellow,orange 

Strings suchen und ersetzen

Erstellen Sie eine Skriptdatei und geben Sie folgenden Code ein:

Live Demo
 students = {'Zara Ali', 'Neha Bhatnagar', ... 'Monica Malik', 'Madhu Gautam', ... 'Madhu Sharma', 'Bhawna Sharma',... 'Nuha Ali', 'Reva Dutta', ... 'Sunaina Ali', 'Sofia Kabir'}; % Die strrep-Funktion sucht und ersetzt Teilstrings. new_student = strrep(students(8), 'Reva', 'Poulomi') % Ersten Namen anzeigen first_names = strtok(students) 

Beim Ausführen der Datei wird folgendes Ergebnis angezeigt:

 new_student = { [1,1] = Poulomi Dutta } first_names = { [1,1] = Zara [1,2] = Neha [1,3] = Monica [1,4] = Madhu [1,5] = Madhu [1,6] = Bhawna [1,7] = Nuha [1,8] = Reva [1,9] = Sunaina [1,10] = Sofia } 

Strings vergleichen

Erstellen Sie eine Skriptdatei und geben Sie folgenden Code ein:

Live Demo
 str1 = 'This is test' str2 = 'This is text' if (strcmp(str1, str2)) sprintf('%s and %s are equal', str1, str2) else sprintf('%s and %s are not equal', str1, str2) end 

Beim Ausführen der Datei wird folgendes Ergebnis angezeigt:

 str1 = This is test str2 = This is text ans = This is test and This is text are not equal 

MATLAB

  1. Java Strings meistern: Erstellung, Methoden und Best Practices
  2. MATLAB: Umfassender Überblick über die führende numerische Computing-Umgebung
  3. Variablen in MATLAB verstehen: Grundlagen & Beispiele
  4. Wichtige MATLAB-Befehle für effizientes Computing
  5. MATLAB Datentypen: Umfassender Leitfaden
  6. MATLAB Operatoren meistern: Arithmetik, Logik, Bitweise Operationen
  7. MATLAB Matrizen Grundlagen: Erstellen, Referenzieren, Manipulieren
  8. MATLAB: Mehrdimensionale und spezielle Arrays meistern
  9. MATLAB-Colon-Notation meistern: Vektoren erstellen & effizient iterieren
  10. MATLAB – Zahlen: Typen, Speicherung und Konvertierung