Matlab中如何截取一个字符串?

作者&投稿:屠斌 (若有异议请与网页底部的电邮联系)
~

a='abcdefghijklmnopqrstuvwxyz' %matlab中是一字符数组的形式存储字符串的

b=a(5:8) %可以像调用数组元素那样调用字符串中的某几个字符的

Matlab 实现特定位置的字符串的截取

save_path = 'H:\Experiment\Img\';

smap_list = 'P1_front_img.jpg';

cell_str = strsplit(smap_list,'_');  %分成三段: 'P1'    'front'    'img.jpg'smap_name = cell_str{1,1};

save_full_path = strcat(save_path, smap_name, '.jpg');  % H:\Experiment\Img\P1.jpg

扩展资料:

关于matlab字符串操作方法(截取)

在这里借助正则表达式函数regexp的split模式。一般语法:S = regexp(str, char, 'split')其中str是待分割的字符串,char是作为分隔符的字符(可以使用正则表达式)。分割出的结果存在S中。

以下面这样一串字符为例:

Hello Nocturne Studio

首先去除首尾的多余空格:str = deblank(str)

例1:设这几个字符串是以制表符分隔的,可以这样来做:S = regexp(str, '', 'split')

例2:设这些字符串是以一个或多个空格分隔的,可以用正则表达式来描述:S = regexp(str, '\s+', 'split')

这样,S(1)=’Hello’,S(2)=’Nocturne’,S(3)=’Studio’。

注意,上面得到的结果S是一个cell型变量,它的每个元素比如S(1)仍然是cell型的,只能用来display,不能直接用来进行字符串操作(比如获取其中的某个字符),所以我们在使用需要执行一次:

s1 = char(S(1))

这样的s1才是一个真正的字符串,可以进行后续的操作。




清远市17273744599: matlab怎样实现字符串截取 -
逯易骨力: matlab中有那些操作字符串函数 除了下面的几个函数 eval(string) 作为一个MATLAB命令求字符串的值 eval(try,catch) blanks(n) 返回一个n个零或空格的字符串 deblank 去掉字符串中后拖的空格 feval 求由字符串给定的函数值 findstr 从一个字符串内找出字符串 isletter 字母存在时返回真值 isspace 空格字符存在时返回真值 isstr 输入是一个字符串,返回真值 lasterr 返回上一个所产生MATLAB错误的字符串 strcmp 字符串相同,返回真值 strrep 用一个字符串替换另一个字符串 strtok 在一个字符串里找出第一个标记

清远市17273744599: matlab 中如何截取字符串的一部分?例如取S2001中的2001? -
逯易骨力: str = 'S2001'; partstr = str(2:end); 即可,将str作为矩阵来看就行.

清远市17273744599: matlab字符串截取的问题 -
逯易骨力: 使用matlab自带的split函数:以下划线“_”为间隔将原来字符串拆分为两部分,然后取相应的部分得到string类型的'12',最后转换为数字12.参考代码:>> str = '11_12';>> list = split(str,'_') list =2*1 string 数组 "11" "12">> new_str = list(2,1) new_str =string "12">> num = str2num(char(new_str)) num = 12上面代码中new_str变量的12还是string类型的,最后转换得到数字类型的num

清远市17273744599: MATLAB 截取字符串
逯易骨力: str='asdlkfj''sdkf''';ind=findstr(str,'''');a=str(ind(1)+1:ind(2)-1);可参考findstr命令.

清远市17273744599: MATLAB中如何拆分及修改字符串 -
逯易骨力: 用Matlab实现字符串分割(split):正则表达式函数regexp的split模式.一般语法:S = regexp(str, char, 'split') 其中str是待分割的字符串,char是作为分隔符的字符(可以使用正则表达式).分割出的结果存在S中.以下面这样一串字符为例 Hello...

清远市17273744599: matlab如何截取第二个空格后的字符串?
逯易骨力: 先导入数据Import Data,分隔符选space,得到一个n行3列的数组,数组名为x; 要取x的第二列: x2 = x(:,2); 取x的第三列: x3 = x(:,3);

清远市17273744599: 求助,Matlab程序怎么去掉一行中的某一字符串 -
逯易骨力: s0 = '求助,Matlab程序怎么去掉一行中的某一字符串'; s1 = '某一字符串'; s2 = []; r = strrep(s0,s1,s2)r = 求助,Matlab程序怎么去掉一行中的

清远市17273744599: matlab 如何提取数组中的字符串 -
逯易骨力: 在matlab中有查找字符串的命令,但是不是你所要求的返回1或0; 你可以使用如下的命令:~isempty(strfind(str,'JPG')) 可以满足你的要求.

清远市17273744599: matlab分割字符串能否在指定位置分割?比如在第***个字符后分割? -
逯易骨力: 如果是指定分割位置的话,不需要使用任何函数即可完成matlab指定位置的字符分割.例如将字符串前三个字符,与后面的字符分割. a='Hello world!'; a1=a(1:3) a2=a(4:end)

清远市17273744599: MATLAB如何半段一个字符数组中含有特定字符? -
逯易骨力: 在matlab中有查找字符串的命令,但是不是你所要求的返回1或0;你可以使用如下的命令:~isempty(strfind(str,'JPG')) 可以满足你的要求.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网