MATLAB字符串

在MATLAB中,创建一个字符串是相当简单。事实上,我们已经用了很多次。例如,在命令提示符处输入以下:

my_string='Tutorial''s Yiibai'

MATLAB 将执行上面的语句,并返回以下结果:

my_string =

Tutorial's Yiibai

MATLAB 认为所有变量,数组和字符串被视为字符数组。让我们使用的命令检查上面创建的变量:

whos

MATLAB将执行上面的语句,并返回以下结果:

Name Size Bytes Class Attributes

my_string 1x16 32 char

有趣的是,你可以使用数字转换函数,如uint8 或 uint16 字符串中的字符转换成数字代码。 char 函数整数向量转换回字符:

例子

创建一个脚本文件,并键入下面的代码:

my_string='Tutorial''s Yiibai';str_ascii=uint8(my_string)%8-bit ascii values

str_back_to_char=char(str_ascii)str_16bit=uint16(my_string)%16-bit ascii values

str_back_to_char=char(str_16bit)

当您运行该文件,它会显示以下结果:

str_ascii =

Columns 1 through 14

84 117 116 111 114 105 97 108 39 115 32 80 111 105

Columns 15 through 16

110 116

str_back_to_char =

Tutorial's Yiibai

str_16bit =

Columns 1 through 10

84 117 116 111 114 105 97 108 39 115

Columns 11 through 16

32 80 111 105 110 116

str_back_to_char =

Tutorial's Yiibai

矩形字符数组

到目前为止我们已经讨论过的字符串的字符数组是一维,但是,我们需要存储超过。我们需要更立体的文本数据存储在我们的程序中。这是通过创建的矩形的字符数组。

创建一个矩形字符数组的最简单的方法是通过连接两个或两个以上的一维字符数组,无论是垂直或水平的要求。

您可以合并垂直字符串通过以下方式之一:

使用 MATLAB 连接运算符[]和分离每行一个分号(;)。请注意,在该方法中的每一行必须包含相同的字符数。不同长度的字符串,应该根据需要使用空格字符。

使用char函数。如果字符串长度不同和 char 补齐较短尾随空白,使每一行都有相同数量的字符的字符串。

例子

创建一个脚本文件,并键入下面的代码:

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

当您运行该文件,它会显示以下结果:

doc_profile =

Zara Ali

Sr. Surgeon

R N Tagore Cardiology Research Center

doc_profile =

Zara Ali

Sr. Surgeon

RN Tagore Cardiology Research Center

可以横向合并字符串以下方式之一:

使用MATLAB串连运算,[],并用逗号或空格分隔输入字符串。这种方法保留任何尾随空格输入数组。

使用字符串连接函数strcat。此方法删除尾随空格输入

例子

创建一个脚本文件,并键入下面的代码:

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

当您运行该文件,它会显示以下结果:

profile =

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

profile =

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

结合成的字符串单元阵列

从前面的讨论,很显然,具有不同长度的字符串相结合,可能是一个痛苦作为在阵列中的所有字符串具有相同的长度。我们已经使用空格的字符串的结尾,其长度相等。

然而,更有效的方式结合字符串转换成一个单元阵列的阵列。

MATLAB单元阵列可以容纳不同尺寸和类型的数据,在一个数组中。单元格阵列提供了一个更灵活的方式来存储不同长度的字符串。

cellstr函数将字符数组转换成字符串单元阵列。

例子

创建一个脚本文件,并键入下面的代码:

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

当您运行该文件,它会显示以下结果:

'Zara Ali'

'Sr. Surgeon'

'R N Tagore Cardiology Research Center'

MATLAB中的字符串函数

MATLAB 提供了许多创建,组合,分析,比较和处理字符串的字符串函数。

下表提供 MATLAB 中的字符串函数的简要说明:

函数

目的/作用

用于存储文本字符数组的函数,结合字符数组,等等

blanks

Create string of blank characters

cellstr

Create cell array of strings from character array

char

Convert to character array (string)

iscellstr

Determine whether input is cell array of strings

ischar

Determine whether item is character array

sprintf

Format data into string

strcat

Concatenate strings horizontally

strjoin

Join strings in cell array into single string

识别字符串部分的函数,查找和替换子串

ischar

Determine whether item is character array

isletter

Array elements that are alphabetic letters

isspace

Array elements that are space characters

isstrprop

Determine whether string is of specified category

sscanf

Read formatted data from string

strfind

Find one string within another

strrep

Find and replace substring

strsplit

Split string at specified delimiter

strtok

Selected parts of string

validatestring

Check validity of text string

symvar

Determine symbolic variables in expression

regexp

Match regular expression (case sensitive)

regexpi

Match regular expression (case insensitive)

regexprep

Replace string using regular expression

regexptranslate

Translate string into regular expression

字符串比较函数

strcmp

Compare strings (case sensitive)

strcmpi

Compare strings (case insensitive)

strncmp

Compare first n characters of strings (case sensitive)

strncmpi

Compare first n characters of strings (case insensitive)

改变字符串大写或小写,创建或删除空格的函数

deblank

Strip trailing blanks from end of string

strtrim

Remove leading and trailing white space from string

lower

Convert string to lowercase

upper

Convert string to uppercase

strjust

Justify character array

例子

下面的示例说明了上述的一些字符串的函数:

格式化字符串

创建一个脚本文件,并键入下面的代码:

A=pi*1000*ones(1,5);sprintf(' %f

%.2f

%+.2f

%12.2f

%012.2f

',A)

当您运行该文件,它会显示以下结果:

ans =

3141.592654

3141.59

+3141.59

3141.59

000003141.59

加入字符串

创建一个脚本文件,并键入下面的代码:

%cell array of strings

str_array={'red','blue','green','yellow','orange'};%Joinstringsincell arrayintosinglestringstr1=strjoin("-",str_array)str2=strjoin(",",str_array)

当您运行该文件,它会显示以下结果:

str1 =

red blue green yellow orange

str2 =

red , blue , green , yellow , orange

查找和替换字符串

创建一个脚本文件,并键入下面的代码:

students={'Zara Ali','Neha Bhatnagar',...'Monica Malik','Madhu Gautam',...'Madhu Sharma','Bhawna Sharma',...'Nuha Ali','Reva Dutta',...'Sunaina Ali','Sofia Kabir'};%Thestrrepfunctionsearchesandreplacessub-string.new_student=strrep(students(8),'Reva','Poulomi')%Displayfirst names

first_names=strtok(students)

当您运行该文件,它会显示以下结果:

new_student =

'Poulomi Dutta'

first_names =

Columns 1 through 6

'Zara' 'Neha' 'Monica' 'Madhu' 'Madhu' 'Bhawna'

Columns 7 through 10

'Nuha' 'Reva' 'Sunaina' 'Sofia'

比较字符串

创建一个脚本文件,并键入下面的代码:

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

当您运行该文件,它会显示以下结果:

str1 =

This is test

str2 =

This is text

ans =

This is test and This is text are not equal

matlab l 汉字字符串,MATLAB字符串相关推荐

  1. matlab l 汉字字符串,Matlab 字符串处理

    MATLAB字符串数组的创建与运算 字符串数组主要用于可视化编程内容,如界面设计和图形绘制. 1.字符串变量的创建 字符变量的创建方法是:在指令窗口中先把待建的字符放在"单引号对" ...

  2. matlab 数值格式转换,Matlab字符串转换及数值格式转换

    Matlab字符串转换及数值格式转换 字符串转换函数 abs 字符串到ASCII转换 dec2hex 十进制数到十六进制字符串转换 fprintf 把格式化的文本写到文件中或显示屏上 hex2dec ...

  3. matlab字符和字符串,MATLAB字符和字符串

    3.字符和字符串 在MATLAB中,几个字符(Character)可以构一个字符串(String).一个字符串被视为一个行向量,而字符串中的每一个字符(含空格符),则是以其ASCII的形式存放于此向量 ...

  4. matlab yticklable,Matlab绘制XTickLabel有效字符串(Matlab Plot XTickLabel valid strings)

    Matlab绘制XTickLabel有效字符串(Matlab Plot XTickLabel valid strings) 我有一个情节: x = [0 1 2 3]; y = [0 0 1 1]; ...

  5. matlab描绘小猪佩奇为字符串

    matlab描绘小猪佩奇为字符串 matlab描绘小猪佩奇为字符串 写在前面 怎么处理 处理方式 处理思路 开干,走起 准备素材 Code的思路 转换字符串遇到的问题 给你看看效果 后续 写在前面 从 ...

  6. matlab小猪程序,matlab描绘小猪佩奇为字符串

    matlab描绘小猪佩奇为字符串 matlab描绘小猪佩奇为字符串 写在前面 怎么处理 处理方式 处理思路 开干,走起 准备素材 Code的思路 转换字符串遇到的问题 给你看看效果 后续 写在前面 从 ...

  7. matlab判断字符串包含字符串,确认字符串包含指定字符串

    创建供交互测试的 TestCase 对象. testCase = matlab.unittest.TestCase.forInteractiveUse; 测试字符串中是否包含子字符串. verifyS ...

  8. MATLAB中字符变量(char)和字符串变量(string)的异同

    文章目录 MATLAB中字符变量(char)和字符串变量(string)的异同 1.表现形式上 2.相同用法 3.差异 4.两者转换 MATLAB中字符变量(char)和字符串变量(string)的异 ...

  9. MATLAB学习笔记04—MATLAB的字符与字符串类型

    MATLAB学习笔记 第4章字符和字符串类型 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 MATLAB学习笔记 一.字符串属性示例 二.字符串数组的索引 三.字符串中的 ...

最新文章

  1. 未来医疗AI发展的八大趋势
  2. Repo lesson
  3. LeetCode OJ -- Binary Tree Paths
  4. JZOJ 5396. 【NOIP2017提高A组模拟10.6】Blocks
  5. gestureRecognizer
  6. Dapr 客户端 搭配 WebApiClientCore 玩耍服务调用
  7. linux网络编程中需要注意的信号SIGPIPE
  8. 用.net中的SqlBulkCopy类批量复制数据 (转载)
  9. 计算机系统访问控制的功能,访问控制是为了限制访问主体对访问客体的访问权限,从而使计算机系统在合法范围内使用的安全措施,以下关于访问控制的叙述中,()是不正确的 - 信管网...
  10. mysql最大、第二、第三
  11. .NET后台输出js脚本的方法
  12. Spring Security 安全框架概述 与 快速入门
  13. 商业保理业务信息化平台建设的要点分享
  14. 极化码理论及算法研究4-巴氏参数、GA算法以及matlab仿真
  15. 谷歌浏览器打开普通用户_谷歌浏览器为啥打开之后会是其他的浏览器的解决步骤...
  16. Win7安装CENTOS
  17. con 元器件符号_multisim元器件符号速查
  18. AutoCAD的所有的序列号和秘钥
  19. iphone6s从ios10升级到ios12遇到的问题
  20. 【记录】一个自动投票的小程序(python实现)

热门文章

  1. 据说是世界上最难的逻辑题之一
  2. Spring Boot(二)——项目热部署与程序发布
  3. 基于运放的功率放大器设计
  4. 迁移学习入门(读王晋东博客)
  5. 【AI】梯度下降的数学原理(05)
  6. 虹膜识别-论文阅读1
  7. 新一代电子书汇总介绍,想入手了
  8. 代码随想录哈希表——四数之和
  9. 企业网络安全策略综合设计与实现
  10. 网瘾室友用一个月的时间,面试进入了网易,他是怎么做到的?