量化投资:以MATLAB为工具
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

0.6 字符操作

(45)MATLAB对大小写敏感吗?

MATLAB对大小写是敏感的,可以使用lower、upper等函数对字符进行转化。

(46)如何在MATLAB中定义带引号的字符串?

在MATLAB编程中,如果想得到带有引号的字符串(字符串中本身带有引号),怎么实现?输入str='string'得到的是:

其中str里没有单引号,如果像下面这样:

又会出现报错,原因是MATLAB进行匹配时是一个单引号对一个单引号。如果字符串中有单引号,按照一般的方式输入就会造成匹配的错误,出现上面的错误提示。正确的解决方式是:

输入三个单引号就可以实现了。如果想要双引号,比如 str="string",此时直接输入双引号就行了:

注意:此处不是三个单引号,是一对单引号和一对双引号,在MATLAB中能很容易看清楚。

(47)在MATLAB中如何使用正则表达式(Regular Expressions)?

正则表达式是一个表达式(也是一串字符),它定义了某种字符串模式,利用正则表达式,可以对大段的文字进行复杂的查找、替换等。MATLAB提供的正则表达式主要有以下三个。

regexp:用于对字符串进行查找,大小写敏感;

regexpi:用于对字符串进行查找,大小写不敏感;

regexprep:用于对字符串进行查找并替换。

详细用法可以参考MATLAB官方帮助文件以及下面这个帖子:

《Matlab正则表达式零基础起步教程》,http://www.matlabsky.com/thread-22038-1-1.html。

(48)如何在字符串中选取特定位置的字符?

只需根据相应的下标就可以获取特定位置的字符,见下例:

运行结果:

(49)如何返回字符个数?

使用length函数可以计算字符的个数。