Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> MATLAB

MATLAB Strings: Maken, Manipuleren en Functies

Het maken van een karakterstring in MATLAB is eenvoudig. Strings worden beschouwd als karakterarrays.

my_string = 'Tutorials Point'

Met whos zien we de eigenschappen:

Name        Size    Bytes  Class    Attributes
my_string   1x16    32     char

Karakters kunnen geconverteerd worden naar numerieke codes:

my_string = 'Tutorial''s Point';
str_ascii = uint8(my_string)      % 8-bit ASCII waarden
str_back = char(str_ascii)        % terug naar karakters
str_16bit = uint16(my_string)     % 16-bit waarden
str_back = char(str_16bit)

Rechthoekige Karakter Arrays

Om meerdere regels tekst op te slaan, maken we rechthoekige karakterarrays waar alle rijen even lang zijn.

Verticaal Combineren

  • Met concatenatie operator [] en puntkomma's (rijen moeten even lang zijn, pads met spaties)
  • Met char functie (vult kortere strings automatisch met spaties aan)
doc_profile = ['Zara Ali '; 'Sr. Surgeon '; 'R N Tagore Cardiology Research Center'];
doc_profile = char('Zara Ali', 'Sr. Surgeon', 'RN Tagore Cardiology Research Center')

Horizontaal Combineren

  • Met [] en komma's/spaties (behoudt trailing spaties)
  • Met strcat (verwijdert trailing spaties)
name = 'Zara Ali '; position = 'Sr. Surgeon '; worksAt = 'R N Tagore...';
profile = [name ', ' position ', ' worksAt];
profile = strcat(name, ', ', position, ', ', worksAt);

Strings Combineren in Cel Arrays

Cel arrays bieden flexibele opslag voor strings van variabele lengte. De cellstr functie converteert een karakterarray naar een cel array van strings.

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

Resultaat:

{'Zara Ali'; 'Sr. Surgeon'; 'R N Tagore Cardiology Research Center'}

String Functies in MATLAB

MATLAB biedt uitgebreide functies voor string manipulatie:

CategorieFuncties
Opslag & Combinatieblanks, cellstr, char, iscellstr, ischar, sprintf, strcat, strjoin
Identificeren & Zoekenisletter, isspace, isstrprop, sscanf, strfind, strrep, strsplit, strtok, validatestring, symvar, regexp, regexpi, regexprep, regexptranslate
Vergelijkingstrcmp, strcmpi, strncmp, strncmpi
Case & Witruimtedeblank, strtrim, lower, upper, strjust

Voorbeelden

Strings Formatteren met sprintf

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

Resultaat:

3141.592654
3141.59
+3141.59
   3141.59
000003141.59

Strings Samenvoegen met strjoin

str_array = {'red','blue','green','yellow','orange'};
str1 = strjoin(str_array, '-');
str2 = strjoin(str_array, ',');

Resultaat: red-blue-green-yellow-orange en red,blue,green,yellow,orange

Zoeken & Vervangen met strrep en strtok

students = {'Zara Ali', 'Neha Bhatnagar', 'Monica Malik', ...};
new_student = strrep(students(8), 'Reva', 'Poulomi');
first_names = strtok(students);

Strings Vergelijken met strcmp

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

Resultaat: This is test and This is text are not equal

MATLAB

  1. MATLAB: Uitgebreid Overzicht van een Leidende Numerieke Rekenomgeving
  2. Variabelen in MATLAB Begrijpen: Basis en Voorbeelden
  3. Essentiële MATLAB Commando's voor Efficiënte Berekening
  4. MATLAB Datatypes: Uitgebreide Gids
  5. MATLAB Operatoren: Complete Gids voor Rekenkundige, Logische en Bitwise Operaties
  6. MATLAB Matrix Basis: Data Aanmaken, Benaderen en Manipuleren
  7. MATLAB: Multidimensionale en Speciale Arrays Beheersen
  8. MATLAB Dubbele Punt Notatie: Vectors Maken & Efficiënt Itereren
  9. MATLAB Getallen: Typen, Opslag en Conversie
  10. MATLAB Functies: Definitie, Werkruimte, In- en Outputs
  11. Java Strings beheersen: aanmaken, methodes en best practices