专栏首页人工智能与演化计算成长与进阶一起来学演化计算-matlab基本函数strcmp num2str 字符串格式

一起来学演化计算-matlab基本函数strcmp num2str 字符串格式

strcmp

  • 比较字符串

语法

  • tf = strcmp(s1,s2)

描述

  • tf = strcmp(s1,s2)比较s1和s2,如果两者相同,则返回1 (true)。否则,strcmp返回0 (false)。如果文本的大小和内容相同,则认为文本是相同的。返回的结果tf是逻辑类型的数据。
  • 输入可以是字符向量、字符数组和字符向量的单元格数组的组合。

示例

比较两个字符串向量

s1 = 'Yes';
s2 = 'No';
tf = strcmp(s1,s2)
tf =

     0

strcmp returns 0 because s1 and s2 are not equal.

Compare two equal character vectors.

s1 = 'Yes';
s2 = 'Yes';
tf = strcmp(s1,s2)
tf =

     1

strcmp returns 1 because s1 and s2 are equal.

在单元格数组中查找文本

s1 = 'upon';
s2 = {'Once','upon';
      'a','time'};
tf = strcmp(s1,s2)
tf =

     0     1
     0     0

数组s2中只出现一次s1,它发生在元素s2(1,2)处

比较两个字符向量单元数组

  • 比较两个字符向量单元数组中的每个元素
s1 = {'Time','flies','when';
      'you''re','having','fun.'};
s2 = {'Time','drags','when';
      'you''re','anxiously','waiting.'};
tf = strcmp(s1,s2)
tf =

     1     0     1
     1     0     0

在s1和s2中有三个相等元素的实例。这些是下标(1,1)处的“Time”,下标(1,3)处的“when”,下标(2,1)处的“you re”。

输入参数

输出参数


num2str

  • 将数字转换为字符串

语法

  • s = num2str(A) 将数字数组转换为字符串表示形式。输出格式取决于原始值。num2str用于标记和用数字给图做标题。
  • s = num2str(A,precision) 返回一个字符串表示形式,其中包含精度指定的最大有效位数。
  • s = num2str(A,formatSpec) 将formatSpec指定的格式应用于A的所有元素。

示例

浮点数的默认转换

  • 将pi和eps返回的浮点值转换为字符串
s = num2str(pi)
s =

3.1416

s = num2str(eps)
s =

2.2204e-16

指定精度

  • 指定浮点值的有效位数的最大数目
A = gallery('normaldata',[2,2],0);
s = num2str(A,3)
s =

-0.433     0.125
 -1.67     0.288

指定格式

  • 对浮点数数组指定宽度,精度和格式
A = gallery('uniformdata',[2,3],0) * 9999;
s = num2str(A,'%10.5e\n')
s =

9.50034e+03
6.06782e+03
8.91210e+03
2.31115e+03
4.85934e+03
7.62021e+03
  • 格式“%10.5e”以五位小数的指数格式打印每个值,“\n”打印一个新行字符。并且只打印10位数字

字符串打印格式

  • 输出字段的格式,指定为包含格式化操作符的字符向量。formatSpec还可以包含普通文本和特殊字符

格式化操作符

  • 格式化操作符以百分号、%开始,以转换字符结束。还可以在%和转换字符之间指定标识符、标志、字段宽度、精度和子类型操作符。(操作符之间的空格无效,此处仅显示可读性)。

转换字符

此表显示将数字和字符数据转换为文本格式的转换字符。

可选操作符

  • 可选标识符、标志、字段宽度、精度和子类型操作符进一步定义了输出文本的格式。The optional identifier, flags, field width, precision, and subtype operators further define the format of the output text.

标识符 Identifier

  • 处理函数输入参数的顺序。使用语法n$,其中n表示函数调用中其他输入参数的位置。
  • Example: ('%3
s %2

s %1

s %2

s','A','B','C') prints input arguments 'A', 'B', 'C' as follows: C B A B.

  • Note: 如果输入参数是数组,则不能使用标识符从该输入参数指定特定的数组元素。

标志 Flags

区域宽度 Field Width

  • 要打印的最小字符数。字段宽度操作符可以是一个数字,或者一个星号( * )来引用输入参数。
  • Example: The input arguments ('%12d',intmax) are equivalent to ('% * d', 12, intmax).
  • 函数在值之前用空格填充字段宽度,除非由标记另行指定。

精度 Precision

特殊文本即转义字符

formatSpec还可以在百分号前、%或转换字符后包含附加文本

注意

  • 数值转换只打印复数的实数部分。
  • 如果指定不适合数据的转换,例如数值的字符转换,MATLAB将覆盖指定的转换,并使用%e。示例:'%s'将pi转换为3.141593e+00。
  • 如果将字符转换(%c或%s)应用于整数值,MATLAB将与有效字符代码对应的值转换为字符。示例: ' %s' converts [65 66 67] to ABC.
  • 提示num2str不接受formatSpec输入参数中的位置标识符。例如,num2str([14 15],'%2
X %1

o])会报错

  • 位置标识符指定格式化操作符处理函数输入参数的顺序,而不是输入数组的元素。当您调用num2str时,只有一个输入参数需要转换数字。
  • 算法num2str从字符串中删除任何前导空格,即使formatSpec包含空格字符标志。例如,num2str(42.67,'% 10.2f')返回一个1×5的字符数组'42.67'。

本文分享自微信公众号 - DrawSky(wustcsken),作者:CloudXu

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-07-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • [DeeplearningAI 笔记]第一章 4.深度神经网络的解释

    吴恩达老师课程原地址: https://mooc.study.163.com/smartSpec/detail/1001319001.htm

    DrawSky
  • Tensorflow 命名空间与计算图可视化

    Tensorflow实战Google深度学习框架: https://github.com/caicloud/tensorflow-tutorial/tree/m...

    DrawSky
  • Tensorflow ActiveFunction激活函数解析

    输入参数:● features: 一个Tensor。数据类型必须是:float32,float64,int32,int64,uint8,int16,int8。●...

    DrawSky
  • 华为中兴又双叒叕无缘澳大利亚5G市场,华为:“极度失望”

    华为对此在推特上回应称:“我们被澳大利亚政府方面告知,华为和中兴被禁止为澳大利亚政府提供5G网络服务,这对消费者来讲是个极其令人失望的结果。华为是5G技术世界领...

    新智元
  • [TensorFlow深度学习入门]实战十·用RNN(LSTM)做时间序列预测(曲线拟合)

    小宋是呢
  • 腾讯2014校园招聘软件开发类笔试试题

    http://blog.csdn.net/zs634134578/article/details/20938113

    bear_fish
  • Spring Security 实战干货:从零手写一个验证码登录

    前面关于Spring Security胖哥又写了两篇文章,分别图文并茂地介绍了UsernamePasswordAuthenticationFilter和 Aut...

    码农小胖哥
  • 二季度营收20亿净赚4.9亿!然而视频社交才是陌陌的盼头

    昨晚,陌陌发布2017年二季度财报,净营收3.122亿美元,同比增长215%。不按照美国通用会计准则计量,2017年二季度归属于陌陌的净利润为7380万美元,同...

    罗超频道
  • tomcat学习|tomat中的server.xml的学习

    小刀博客: https://www.lixiang.red 小刀公众号: 程序员学习大本营

    微笑的小小刀
  • SAP的新零售

    随着科技的进步,世界正在一步一步的被改变着。我们应该庆幸遇到这个充满未知、充满新鲜感的时代。继一号店之后,当当也对这个时代说了句:再见了。言归正传,说回今天的主...

    matinal

扫码关注云+社区

领取腾讯云代金券