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