📜  MATLAB 中的字符和字符串

📅  最后修改于: 2022-05-13 01:55:30.041000             🧑  作者: Mango

MATLAB 中的字符和字符串

在本文中,我们将了解如何在 MATLAB 中处理字符和字符串。数据类型是指定对象可以保存的数据类型的属性/关键字:数字数据或文本数据。默认情况下,MATLAB 将所有数值变量存储为双精度浮点值。其他数据类型将文本、整数或单精度值或相关数据的组合存储在单个变量中。

文本数据存储在字符数组和字符串数组中。我们将在 MATLAB 中同时使用字符和字符串的用例:

字符:

就像在 C/C++/ Java中一样,字符是一种将单个字符数据存储在单引号内的数据类型。在 Matlab 中,您将整个文本存储在单引号内,它将被视为字符。

示例 1:

Matlab
% Character is enclosed within single quotes
chr = 'Geeksforgeeks'
whose chr


Matlab
% MATLAB code for Single Quote
% Sentence Inside Character
chr = 'Geeksforgeeks is hosting, '
'Geeks Premier League'' for all its writers.';


Matlab
% MATLAB code for indexing
practice = 'Geeksforgeeks';
practice(1:5)


Matlab
% MATLAB code for indexing
practice(1)


Matlab
% MATLAB code for Concatenate
str1 = 'Geeks';
str2 = 'Premier League';
str3 = ' 2022';
contest = [str1,str2,str3]


Matlab
% MATLAB code for append
com = 'Geeks';
contest = append(com,'Premier League');
display(contest)


Matlab
% MATLAB code for string with whose
competition = "Code India Code"
whose competition


Matlab
% MATLAB code for get a string length
str = "Geeks Premier League";
num = strlength(str)


Matlab
% MATLAB code for isstring
str = isstring('Mathworks')


Matlab
% MATLAB code for isstring
str = isstring("Mathworks")


Matlab
change = "Coding is tough";
str = replace(change,"tough","easy");
display("Before:" +change)
display("After:" +str)


Matlab
% MATLAB Code for String Lower and Upper
lower GEEKSFORGEEKS
upper geeksforgeeks


Matlab
str1 = reverse("Matlab is fun")


Matlab
str1 = 'Geeksfor';
str2 = 'forGeeks';
cmp = strcmp(str1,str2)


Matlab
str1 = 'Geeks';
str2 = 'Geeks';
cmp = strcmp(str1,str2)



输出:

文本“Geeksforgeeks”有 13 个字符长,chr 将其存储为 1×13字符向量。如上图所示,您可以注意到 chr 变量属于 Char 类,即字符。

如果文本包含单引号,请在定义中使用两个单引号。

示例 2:

MATLAB

% MATLAB code for Single Quote
% Sentence Inside Character
chr = 'Geeksforgeeks is hosting, '
'Geeks Premier League'' for all its writers.';


输出:

chr = 'Geeksforgeeks is hosting, ''Geeks Premier League'' for all its writers.'

MATLAB中的字符操作:

  • 索引:索引用于从字符序列中选择文本的子集。要在 Matlab 中执行索引操作,索引应包含在括号()中。

示例 3:

MATLAB

% MATLAB code for indexing
practice = 'Geeksforgeeks';
practice(1:5)

输出:

ans='Geeks'

示例 4:

MATLAB

% MATLAB code for indexing
practice(1)


输出:

ans='G'
  • Concatenate:用方括号连接字符向量,将两个不同的字符合并为一个。

示例 5:

MATLAB

% MATLAB code for Concatenate
str1 = 'Geeks';
str2 = 'Premier League';
str3 = ' 2022';
contest = [str1,str2,str3]


输出:

contest = 'GeeksPremier League 2022'
  • append: append函数在现有字符。连接的功能是相同的,但建议使用 append函数,因为它一致地处理字符串数组、字符向量和字符向量元胞数组。

示例 6:

MATLAB

% MATLAB code for append
com = 'Geeks';
contest = append(com,'Premier League');
display(contest)

输出:

contest = 'GeeksPremier League'

细绳

字符串数组提供了一组将文本作为数据处理的函数,即,它是一个包含在双引号内的字符序列。

示例 7:

MATLAB

% MATLAB code for string with whose
competition = "Code India Code"
whose competition


输出:

字符串操作:

  • strlength:字符串的长度返回给定字符串中的字符总数。

示例 8:

MATLAB

% MATLAB code for get a string length
str = "Geeks Premier League";
num = strlength(str)


输出:

num=20
  • isstring:检查给定的字符串是否为字符串。如果不是字符串则返回 0,如果是字符串则返回 1。

示例 9:

MATLAB

% MATLAB code for isstring
str = isstring('Mathworks')


输出:

str = 0

0 因为它是假的,输入的值是在字符中(用单引号括起来)。

例 10:

MATLAB

% MATLAB code for isstring
str = isstring("Mathworks")

输出:

1
  • 替换:当您有一个字符串并且想要将旧内容更新为新内容时,使用替换函数。使用替换函数,您可以将旧字符串数据修改为同一变量中的新数据。

例 11:

MATLAB

change = "Coding is tough";
str = replace(change,"tough","easy");
display("Before:" +change)
display("After:" +str)


输出:

"Before: Coding is tough"
"After:Coding is easy"
  • lower 和 upper: lower 和 upper 函数用于修改给定的字符串。 lower 将字符串转换为小写,而 upper 将字符串转换为大写。

MATLAB

% MATLAB Code for String Lower and Upper
lower GEEKSFORGEEKS
upper geeksforgeeks


输出:

  • reverse:反向函数用于返回相同的字符串,但顺序相反。

例 12:

MATLAB

str1 = reverse("Matlab is fun")


输出:

str= "nuf si baltaM"
  • strcmp:当我们有两个不同的字符串时,Matlab 甚至允许我们比较这两个字符串。使用 strcmp,您可以比较字符串。如果相等则返回 1,如果不相等则返回 0。

注意:比较区分大小写。

例 13:

MATLAB

str1 = 'Geeksfor';
str2 = 'forGeeks';
cmp = strcmp(str1,str2)


输出:

0

例 14:

MATLAB

str1 = 'Geeks';
str2 = 'Geeks';
cmp = strcmp(str1,str2)

输出:

1