MATLAB的字符串分析。

字符串实际上是指1Xn 的字符数组。

MATLAB软件具有强大的字符串处理功能,提供了很多的字符或字符串处理函数,包括字符串的创建、字符串的属性、比较、查找以及字符串的转换和执行等。

由于MATLAB语言是用C语言进行开发的,因此它的字符串操作与C语言的相应操作非常类似。

字符串操作的常用函数:

% 字符串处理
a='  a';b='b  b';c='cccc';m=''
% 获取字符串长度
length(a)     
% 连接两个字符串,每个字符串最右边的空格被裁切
d=strcat(a,c)  
length(d)
% 连接多行字符串,每行长度可不等,自动把非最长字符串最右边补空格
% 使与最长字符串相等,会忽略空字符串
e=strvcat(a,b,m)
size(e)
% char连接,空字符串会被空格填满
f=char(a,b,m)
size(f)

% strcmp    比较两个字符串是否完全相等,是,返回真,否则,返回假
% strncmp    比较两个字符串前n个字符是否相等,是,返回真,否则,返回假
% strcmpi    比较两个字符串是否完全相等,忽略字母大小写
% strncmpi   比较两个字符串前n个字符是否相等,忽略字母大小写

% isletter  检测字符串中每个字符时否属于英文字母
% isspace    检测字符串中每个字符是否属于格式字符(空格,回车,制表,换行符等)
% isstrprop  检测字符每一个字符是否属于指定的范围
a='d sdsdsd 15#';
b=isletter(a)
c=isspace(a)

% 字符串替换和查找   
% strrep 进行字符串替换,区分大小写
%   strrep(str1,str2,str3)
%      它把str1中所有的str2字串用str3来替换

% strfind(str,patten) 查找str中是否有pattern,返回出现位置,没有出现返回空数组 【两个参数的位置不能互换,否则无法获得正确结果】
% findstr(str1,str2)   查找str1和str2中,较短字符串在较长字符串中出现的位置,没有出现返回空数组 【两个参数的位置能互换】
% strmatch(patten,str) 检查patten是否和str最左侧部分一致
% strtok(str,char)     返回str中由char指定的字符串前的部分和之后的部分,
mm='youqwelcome';
[mm1,mm2]=strtok(mm,'q')

% blanks(n)            创建有n个空格组成的字符串
% deblank(str)          裁切字符串的尾部空格
% strtrim(str)          裁切字符串的开头和尾部的空格,制表,回车符

% lower(str)           将字符串中的字母转换成小写
% upper(str)            将字符串中的字母转换成大写  
% sort(str)              按照字符的ASCII值对字符串排序

% num2str         将数字转换为数字字符串
% str2num          将数字字符串转换为数字
% mat2str          将数组转换成字符串
% int2str          把数值数组转换为整数数字组成的字符数组

------------------------------

CELL数组中的字符串比较:

c=cell(2,1);
c(1,1)=cellstr('xxx');
c(2,1)=cellstr('yyyyyyy');
strcmp(c{1,1},c{2,1});

------------------------------

isequal   Test arrays for equality, 可用来比较两个字符数组是否相同。

via:http://www.ilovematlab.cn/thread-294865-1-1.html

MATLAB 的字符串分析的更多相关文章

  1. Matlab之字符串处理

    Matlab处理字符串 1.取得部分字符串 我们有一个字符串 file='20131030_113109.TemporaryAlias.Poly5'; 简单操作举例: >> a=file( ...

  2. 用MATLAB实现字符串分割

    strsplit更好用,用法: strsplit(strtrim(sprintf('  \t\nds   \nhs\t dssd    \t    \n'))) 以下转载 Matlab的字符串处理没有 ...

  3. 用Matlab实现字符串分割(split)

    用Matlab实现字符串分割(split)Posted on 2011/08/08 Matlab的字符串处理没有C#强大,本身又没有提供OO特性,需要依赖别的手段完成这项任务. 我们在这里借助正则表达 ...

  4. 逆向中静态分析工具——IDA初学者笔记之字符串分析

    逆向中静态分析工具——IDA初学者笔记之字符串分析 程序中往往包含很多字符串资源,这些资源存在于PE文件的rdata段,使用IDA反编译后,可以查找到这些字符串, 逆向破解程序通常需要一个突破点,而这 ...

  5. 7.matlab字符串分析

    1 字符串处理函数 clc; clear all; str='My name is Robin.'; disp(str); %字符串的输出 str_size=size(str) %字符串的长度 str ...

  6. Matlab 之 字符串数组查找

    Matlab的优势在于向量操作,字符串操作往往费时费力,但是如果能充分利用Matlab自带的一些函数,也可以取得不错的效果.下面就介绍一下字符串数组查找的小技巧. 字符串数组我通常会选择应用cell格 ...

  7. Matlab 绘图全方位分析及源码

    Matlab绘图 强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数.此外,M ...

  8. matlab M文件分析工具使用(Code Analyzer and Profiler)

    Code Analyzer and Profiler Matlab中,对写在m文件(.m文件)里的代码有分析的工具,可以进行优化,这里做一个简单的介绍. Code Analyzer Code Anal ...

  9. 利用grep命令查找字符串分析log文件的一次实践

    需求场景: 我需要分析一个服务器访问日志,分析百度蜘蛛这个月对求索网页面的抓取情况. 分析问题: 我的一个access.log文件大小有35M,不可能直接通过打开查看.我需要过滤掉一些没有的信息,只保 ...

随机推荐

  1. 火狐firefox插件配合scrapy,注意tbody会导致empty

    有2个常有插件,一个是xpath checker,一个是firepath(配合firebug) xpath checker是个好东西,不仅可以分析,还可以验证自己抽取的xpath是否正确 但xpath ...

  2. 【转载】Linux中profile、bashrc、bash_profile之间的区别和联系

    如果你想对所有的使用bash的用户修改某个配置并在以后打开的bash都生效的话可以修改这个文件,修改这个文件不用重启,重新打开一个bash即可生效.~/.bash_profile:每个用户都可使用该文 ...

  3. CF 1006B Polycarp's Practice【贪心】

    Polycarp is practicing his problem solving skill. He has a list of n problems with difficulties a1,a ...

  4. 拓扑排序(Topological Order)UVa10305 Ordering Tasks

    2016/5/19 17:39:07 拓扑排序,是对有向无环图(Directed Acylic Graph , DAG )进行的一种操作,这种操作是将DAG中的所有顶点排成一个线性序列,使得图中的任意 ...

  5. 洛谷——P2371 EXCEEDED WARNING C(50)

    P2371 EXCEEDED WARNING C 题目背景 第三道溢出警告... 机(wei)智(suo)的TMXi又搬题来坑大家了... 注意时空限制[坏笑] 题目描述 [li]1949年,阿三的数 ...

  6. 手动安装python3和xgboost

    yum install openssl-devel -y .tar.xz cd Python- ./configure --prefix=/usr/local/python3.5.4 make mak ...

  7. 浅析module.exports和exports区别和使用

    module.exports和exports 写node的时候,特别是自定义模块的时候,都是一顿乱敲,然后module.exports={}完事. 但有时候去看别人写的代码的时候会发现还可以expor ...

  8. SendMessage 和 PostMessage

    1.首先是返回值意义的区别,我们先看一下 MSDN 里的声明: LRESULT SendMessage( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lPar ...

  9. Scala零基础教学【61-80】

    第61讲:Scala中隐式参数与隐式转换的联合使用实战详解及其在Spark中的应用源码解析 第62讲:Scala中上下文界定内幕中的隐式参数与隐式参数的实战详解及其在Spark中的应用源码解析 /** ...

  10. Xcode8 不能显示blame,show blame for line 灰色不可点解决办法

    1.原因 创建工程时没勾选create git repository 2.解决办法 ➜  ~  cd /Users/zhanglinfeng/Documents/EastMoney/EMLive  / ...