用matlab 提取字符串中的数字。

用matlab读文件名,出现1005.xls;1.xls;100.xls等等这样的字符串,现在想用matlab将其中的数字提出来,成为10051100......这样的数... 用matlab读文件名,出现1005.xls; 1.xls; 100.xls等等这样的字符串,现在想用matlab将其中的数字提出来,成为 1005 1 100......这样的数组,向高手请教。好像可以使用regexp函数,但是具体操作有点不懂 展开
 我来答
ruifengcao
2011-03-03 · TA获得超过9489个赞
知道大有可为答主
回答量:3579
采纳率:33%
帮助的人:2045万
展开全部
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 [ \t\r\n\f\v]
\S Not whitespace [^ \t\r\n\f\v]
那么你的问题就可以使用下面的代码了
>>a='5000.xls'

a =

5000.xls

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

s =

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

祝你学习愉快!
greatdju
2011-03-03 · TA获得超过2.2万个赞
知道大有可为答主
回答量:2486
采纳率:50%
帮助的人:4157万
展开全部
A='1005.xls; 1.xls; 100.xls'
regexp(A,'\d+(?#\.xls)','match')
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式