MATLAB的字符串分析

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

时间: 2024-10-27 08:52:44

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

Matlab实现字符串分割

Matlab实现字符串分割(split) Matlab的字符串处理没有C#强大,本身又没有提供OO特性,需要依赖别的手段完成这项任务. 我们在这里借助正则表达式函数regexp的split模式.一般语法: S = regexp(str, char, 'split') 其中str是待分割的字符串,char是作为分隔符的字符(可以使用正则表达式).分割出的结果存在S中. 以下面这样一串字符为例 Hello Nocturne Studio 首先去除首尾的多余空格: str = deblank(str)

待字闺中之interleave字符串分析

题目来源,待字闺中,原创@陈利人 ,欢迎大家继续关注微信公众账号"待字闺中" 3个字符串a,b,c.判断c是否是a和b的interleave,也就是c中应该有a,b中所有字 符,并且c中字符顺序和a,b中一样.比如, 1. a = "ef" b = "gh" c = "egfh" return true: 2. a = "ef" b = "gh" c = "ehgf"

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

逆向中静态分析工具--IDA初学者笔记之字符串分析 程序中往往包含很多字符串资源,这些资源存在于PE文件的rdata段,使用IDA反编译后,可以查找到这些字符串, 逆向破解程序通常需要一个突破点,而这个突破点,往往就是一个Messagebox,因为这个Messagebox可以很直观的 让我们知道当前位置的代码负责哪些功能,而同时Messagebox可以提供一个字符串让我们来查找定位. 首先,打开IDA,主菜单View-Open subviews-strings: 这时出来一个strings窗口,

String中字符串==分析

目录 String中字符串==分析 new String intern() 通过字面量赋值 常量字符串 "+" 对于final字段 变量和常量字符串拼接 参考博客 String中字符串==分析 new String new String都是在堆上创建字符串对象. intern() 调用intern()方法时,编译器会将字符串添加到常量池中(StringTable维护),并返回指向该常量的引用. String str2 = new String("str")+new

7.matlab字符串分析

1 字符串处理函数 1 clc; 2 clear all; 3 str='My name is Robin.'; 4 disp(str); %字符串的输出 5 str_size=size(str) %字符串的长度 6 str(1:7) %截取字符串的一部分 7 str2=str(end:-1:1) %字符串反序输出 8 str_ascii=double(str) %字符串的ASCII码显示 9 char(str_ascii) %以字符串显示 10 str3='大家好!'; %显示汉字 11 st

Matlab - 将字符串作为代码执行

使用eval()函数将字符串作为代码执行: 配合num2str()函数和循环结构,可访问按规律排列的文件. >> help eval eval Execute MATLAB expression in text. % eval 将字符作为MATLAB代码执行: eval(EXPRESSION) evaluates the MATLAB code in the character vector EXPRESSION. [OUTPUT1,...,OUTPUTN] = eval(EXPRESSION

matlab截取字符串

刚想截取一个matlab字符串中间的一段字符,网上搜了一下,发现strfind这个函数是matlab用来查找字符串中的字符的. help strfind得到的结果: strfind Find one string within another. K = strfind(TEXT,PATTERN) returns the starting indices of any occurrences of the string PATTERN in the string TEXT.返回在这个字符串中所有出

(转载)matlab常用字符串处理函数

来源:Matlab中文论坛 % 字符串处理 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) % 

matlab中字符串的表示

matlab中,字符串使用单引号括起来的字符序列 >>xm='Central South University' >>xm(1:3) ans= Cen 截取1--3这三个字符,就是Cen 如果字符串中有单引号,要用两个单引号来表示 >>'I''m a teacher' ans= I'm a teacher 可以建立多行字符串,形成字符串矩阵 >>ch=['abcdef';'123456']; >>ch(2,3) ans= 3 例子 建立一个字符串