• matlab学习笔记10_4MATLAB中的字符串表示


    一起来学matlab-字符串操作

    10_4 MATLAB中的字符串表示

    觉得有用的话,欢迎一起讨论相互学习~Follow Me

    参考书籍
    《matlab 程序设计与综合应用》张德丰等著 感谢张老师的书籍,让我领略到matlab的便捷
    《MATLAB技术大全》葛超等编著 感谢葛老师的书籍,让我领略到matlab的高效

    MATLAB中的字符串符号

    • MATLAB将字符串当做一个行向量,每个元素对应一个字符;也就是将字符串保存在一个行向量中,向量的每个元素对应一个字符。
    • MATLAB中使用单引号将字符串扩起来,'' 注意不是双引号
    • 字符串矩阵的每一行字符串元素的个数可以不同,但是每一行中所有字符串中的总个数必须相同。
    • 每一行中字符串的计算只计算单引号扩起来的并且算空格的部分 括号之间的空格不一样
    • 事实上,MATLAB将行内的所有字符串都合并起来,构成一个字符串,单个字符串之间不加空格,这正是每行中输入的字符串个数可以不相同的根本原因
    >> SA=['hello';'world';'我是许某某']
    SB=['你好' '但是我不好' '有没有想过你为什么不好';'那不知道你为什么不好啊' '那就是 命运吧'] % 一行中的字符只算单引号中的,并且不计算单引号中的括号
    SC=['hello' 'nihao';'world';'我是许某某'] % 两行的字符长度不同,所以会报错[1,10],[1,5],[1,5]
    
    SA =
    
    hello
    world
    我是许某某
    
    
    SB =
    
    你好但是我不好有没有想过你为什么不好
    那不知道你为什么不好啊那就是 命运吧
    
    串联的矩阵的维度不一致。
    

    在这里插入图片描述

    • 利用这个特点,可以用[]将任意字符串连接起来
    >> [SA(1,:) SA(2,:) SA(3,:)]
    
    ans =
    
    helloworld我是许某某
    
    • 对于'也是可以标识特殊字符的标识,因此:
      在这里插入图片描述

    • 字符串标识方法和数值向量或矩阵相同,也就是可以对元素进行提取或重新赋值的操作

    >> s1='My name is limomo'
    
    s1 =
    
    My name is limomo
    
    >> s2=s1(1:end) % 是s1(1:1:end)的缩写,表示从头到尾进行取值,不间隔字符
    
    s2 =
    
    My name is limomo
    
    >> s2=s1(1,:)
    
    s2 =
    
    My name is limomo
    
    >> s2=s1(end:-1:1) % 是s1(end:-1:1,:)的缩写,表示从尾到头进行取值,不间隔字符
    
    s2 =
    
    omomil si eman yM
    
    • 字符串及字符串矩阵可以进行加、减、乘、除四则运算和其他的数学运算。由于MATLAB是将字符串及字符串矩阵当作数据矩阵来处理的,因而在进行这些运算时,实际上是由字符串的各个字符的ASCII码组成的数据矩阵之间的数学运算。通常可以打印的字符的ASCII码在32-127范围之间,同时任意8位二进制数的范围在0-255之间,如果数值不是正整数,或是超出了上面的范围,则实际上是打印出ASCII码为fix(rem(A,256))的字符.
    'a'+'b'
    ans=195
    'a'*'b'
    ans=9506
    abs('a')
    ans=97
    abs('b')
    ans=98
    
  • 相关阅读:
    Understanding CMS GC Logs--转载
    Understanding G1 GC Logs--转载
    gcview使用
    kafka源码分析之一server启动分析
    电商网站的初期技术选型--转
    An In-Depth Look at the HBase Architecture--转载
    Maven报错Missing artifact jdk.tools:jdk.tools:jar:1.7--转
    定时任务调度系统设计
    spark源码解析之scala基本语法
    Searching with regular sentences will only get you so far – if you need to find something a bit tricky turn to these advanced yet simple methods--转
  • 原文地址:https://www.cnblogs.com/cloud-ken/p/11734052.html
Copyright © 2020-2023  润新知