第二阶段考试

Posted jun0822

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第二阶段考试相关的知识,希望对你有一定的参考价值。

Matlab 字符串处理的若干问题总结

 

 

 

基本说明


 

Matlab字符串的处理:

  • 在MATLAB中,字符串是用单引号括起来的字符序列(双引号括起来也可以)
  • 若字符串中的字符含有单引号,则该单引号字符要用两个单引号来表示,或者直接将整个字符串用双引号引起来
  • 在MATLAB中,下标索引都是从1开始,无论是数据是数组,矩阵,结构体还是元组数据类型

 

1. 字符串中含有单引号



我们知道,matlab 中一个字符串由单引号标识,如果一个字符串中本身含有单引号,比如xi‘an(地名,西安),使用转义符是不奏效的。matlab 提供的做法是,双单引号标识一个单引号:

1 >> addr = xi‘‘an
2 addr =
3 xian
4 123

 

2. 字符串拼接


 

[] 进行的是字符串的拼接;
{} 定义的则是cell,即元组;

这涉及到 matlab 的编程设计思想问题,也即 matlab 是围绕矩阵展开的,而 matlab 下的矩阵必须是数值型的,而不可以是字符串矩阵,想要定义一个结构来存放多个字符串,可以使用 {},而不可以使用构建matlab 矩阵)[](等价于 strcat)。

 

3. 使用 char()函数


1 >> asc = char(reshape(32:127,32,3))
2 asc =
3 
4 !"#$%&‘()*+,-./0123456789:;<=>?
5 @ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_
6 `abcdefghijklmnopqrstuvwxyz{|}~

 

当 char() 函数接受多参数时,也即

S = char(T1,T2,...,TN)

 

将会构建 char 型二维矩阵(使用矩阵的方式进行索引),行数为参数的个数,列数为单个参数的最大长度。


4. 字符串比较


 

strcmp()
strcmpi():大小写不敏感,即case insensitive;

 

5. deblank


 

Remove trailing whitespace from end of character array. (删除序列尾部(注意仅仅是尾部,不包括头部的空格)的空格)。

 

6. 字符串切割(split)



使用正则表达式:

>> str = hello world hello China;
>> splited = regexp(str,  , split);
>> splited
splited = 
hello world hello China

 

注意 regexp(str, ‘ ‘, ‘split‘) 得到的是元组类型。


7. strfind():返回元素的下标


 

>> strfind(hello|world, |)
6

 

8. char ⇔ ASCII,字符和其对应ASCII编号的转换



(1)ASCII ⇒ char

>> char([97, 98, 99])
ans =

abc

 

(2)char ⇒ ASCII

>> abs(abc)
ans =

97 98 99


9. 字符串的拼接



字符串(str1、str2)的拼接使用 [str1, str2] 或 [str1 str2]。
注意,str1 + str2 所做的动作就不是拼接了(C++中重载了的运算符+可以实现字符串拼接功能),而是首先转换为 ascii 码类型,再进行相加的操作,这就要求两串的长度必须相等,

>> str1 = hello; str2 = world;
>> str1 + str2 
ans =

223 212 222 216 211

 

 

>> abs(str1) + abs(str2)
ans =

223 212 222 216 211

 

 

参考:

 

https://blog.csdn.net/lanchunhui/article/details/51337203?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param

以上是关于第二阶段考试的主要内容,如果未能解决你的问题,请参考以下文章

NOIP最后阶段每日小记

2018年软考全年考试科目时间安排

NEFU C语言阶段一2021年计算机1班阶段考试复习 参考代码

NEFU大一下C语言阶段一考试参考代码(带注释)

beta阶段组间的140字互评

2019第十二届“认证杯”数学建模(第二阶段)