matlab如何提取字符串中的数字?

来自:游戏    更新日期:早些时候
用matlab 如何提取字符串中的数字?~

S = REGEXP(STRING,EXPRESSION)
其中EXPRESSION的取法为:
. Any character
[] Any character contained within the brackets
[^] Any character not contained within the brackets
\w A word character [a-z_A-Z0-9]
\W Not a word character [^a-z_A-Z0-9]
\d A digit [0-9]
\D Not a digit [^0-9]
\s Whitespace [
\f\v]
\S Not whitespace [^
\f\v]
那么你的问题就可以使用下面的代码了
>>a='5000.xls'

a =

5000.xls

>> s=a(regexp(a,'\d'))

s =

5000
这时的s是字符型的,如果你需要数字的话就是用str2num转化一下

祝你学习愉快!

如何把表格中的数字单独提取出来呢?用复制-粘贴就能搞定。

matlab 获取字符串中的数字

str='1999.jpg'

A=isstrprop(str,'digit');

B=str(A);

C=str2num(B)



用正则表达式匹配吧:
>> s = '[数字一12000] [数字二28000]'

s =

[数字一12000] [数字二28000]

>> ms = regexp( s, '(?<=\w+)\d+', 'match' )

ms =

'12000' '28000'

然后将字符串转换为数字:
>> num1 = str2num( ms{ 1 } )

num1 =

12000

a='[数字一12000] [数字二28000]';
index1=strfind(a,'一');
index2=strfind(a,'二');
index3=strfind(a,']');

num1=a(index1+1:index3(1)-1)
num2=a(index2+1:index3(2)-1)

用正则表达式匹配吧:
>>
s
=
'[数字一12000]
[数字二28000]'
s
=
[数字一12000]
[数字二28000]
>>
ms
=
regexp(
s,
'(?<=\w+)\d+',
'match'
)
ms
=
'12000'
'28000'
然后将字符串转换为数字:
>>
num1
=
str2num(
ms{
1
}
)
num1
=
12000


matlab如何提取字符串中的数字?视频

相关评论:
  • 19333572999matlab怎样实现字符串截取
    水士冉matlab中有那些操作字符串函数除了下面的几个函数eval(string)作为一个MATLAB命令求字符串的值eval(try,catch)blanks(n)返回一个n个零或空格的字符串deblank去掉字符串中后拖的空格feval求由字符串给定的函数值findstr从一个字符串内找出字符串isletter字母存在时返回真值isspace空格字符存在时返回真值isstr...

  • 19333572999MATLAB cell中字符串的提取处理
    水士冉其实不用这么麻烦寻找匹配,matlab自带了字符串查找函数strfind(str,patten),来查找str中是否有pattern,返回出现位置,没有出现返回空数组。具体使用方式如下:如果有一致的,则返回匹配字符串的起始位置,若没有一致,则返回空。执行结果如下:

  • 19333572999MATLAB中,我要把元胞数组中的字符串提取出来,应该用什么函数?
    水士冉应该用b=a{1,1}

  • 19333572999matlab中用正则表达式如何取两个字符串之间的字符串
    水士冉clear;clcs='fafw34rfdfloor_num":2bsaubakejdacbnklsfloor_num":3asdf23tfloor_num":4stsmnw54dgfloor_num":212floor_num":234floor_num":3';regexpi(s,'(?<=floor_num":2).*?(?=floor_num":3)','match')ans = 'bsaubakejdacbnkls' '12floor_num":234'

  • 19333572999怎样用MATLAB计算字符串中一个字符的个数
    水士冉»n=findstr(b,' p ') % find the letter p ans = 9 13 22 30 38 40 41 size(n)字符串简介:字符串主要用于编程,概念说明、函数解释、用法详述见正文,这里补充两点:1.Free Pascal中的Ansistring只能看成整体,很多函数无法使用,就算是提取单个元素也很麻烦,所以...

  • 19333572999matlab提取string中的特定数字
    水士冉idx=find(string==A);即为找出字符串string中的字符A的位置,返回值就是A的位置。

  • 19333572999如何用matlab在字符串中查找指定字符出现的次数和位置
    水士冉具体操作如下:cell_string=textread('myfile.txt','%s','whitespace','');如果没有空格,可以去掉空格辨认如下 cell_string=textread('myfile.txt','%s');然后是读取第n到第n+10个字符 n=?; %这里n填入你需要的数值 string_s=cell_string{1}; %将读取的字符串从cell里存到字符串 %str...

  • 19333572999MATLAB查找关键字并提取
    水士冉使用函数xlsread[n,t,r]=xlsread(文件名)其中n存的是表中的所有数字组成矩阵,t是所有非数字字符串组成元胞矩阵,r是所有非空单元格内容(字符串)组成的元胞矩阵详情可以helpxlsread字符串比较可以用strcmp(串1,串2)举个例子吧建立如图1的excel表,命名为t.xls,保存在E:soft_workplacematlab现在...

  • 19333572999用Matlab可以从字母数字组成的字符串中提取数字吗
    水士冉matlab中字符串处理函数指令 中有个isletter,判断是否是字母 有个例子:str='matlab r12.1';is_isletter=isletter(str)结果是 is_isletter = 1 1 1 1 1 1 0 1 0 0 0 0 可见isletter的返回值是个矩阵,是字母的位置返回“1”,不是则返回“0”因此你要的功能可以据此函数写出,查找到为...

  • 19333572999MATLAB如何半段一个字符数组中含有特定字符?
    水士冉比如我有一个字符数组str,里面有很多字符,我想判断这个数组里是否含有JPG这个字符串,JPG是连在一起的,如果有,则返回1,没有就返回0。请问MATLAB有现成的命令么?如果自己写,应该怎么写?谢谢大家。 zorro84 | 浏览6368 次 |举报 我有更好的答案推荐于2016-10-03 07:42:18 最佳答案 使用strfind函数。S = '...

  • 相关主题精彩

    版权声明:本网站为非赢利性站点,内容来自于网络投稿和网络,若有相关事宜,请联系管理员

    Copyright © 喜物网