24小时热门版块排行榜    

CyRhmU.jpeg
查看: 2357  |  回复: 10

wind5fsa

金虫 (小有名气)

[求助] 求教matlab中 读取文件名时去掉小数点的程序

大家好,,我现在有一些图片,名字定义为filename,是2.0000180.tif 这种类型的文件名,里面有两个点。我想获得它前面四张,也就是2.0000176.tif这一张,以前的程序是:

m=length(filename)-4;
filename2=[num2str(str2num(filename(1:m))-cha),'.tif'];
file=[path filename2];
i=imread(file);

但是这个程序只适用于XXXX.tif 这种.tif前面为整数的,如果有小数点类似于2.0000180.tif ,文件名减4之后就变成-2了,而不是2.0000176.tif。

求指教程序如何能把上面的程序修改一下,使它既能获得前缀是整数的照片的前四张,也能获得前缀是小数的文件的前四张,谢谢!请注意我想得到一个普适的程序而不是分开算不同情况的,多谢!
回复此楼

» 收录本帖的淘帖专辑推荐

matlab典型案例及小技巧

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

祝福
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖置顶 ( 共有1个 )

wind5fsa

金虫 (小有名气)

wind5fsa: 回帖置顶 2013-11-02 12:37:50
引用回帖:
2楼: Originally posted by baobiao007 at 2013-11-02 12:09:12
你说要获得前面4张,怎么又变成只要176那一张了?  cha是啥东西?

不好意思我没表达清楚,我只要往180前面数4张的176那一张,cha就是我定义的往前数多少张,在这里等于4。菜鸟见谅!
祝福
3楼2013-11-02 12:37:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

baobiao007

木虫 (职业作家)

中国特色

你说要获得前面4张,怎么又变成只要176那一张了?  cha是啥东西?
我同意叔本华的观点,人们投身艺术和科学领域的强烈愿望之一就是逃离痛苦、残酷和枯燥无味的现实生活,逃离自己飘忽不定的七情六欲的桎梏。--爱因斯坦
2楼2013-11-02 12:09:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

baobiao007

木虫 (职业作家)

中国特色

用小数点命名文件名,你这是自己给自己找麻烦啊,呵呵
我同意叔本华的观点,人们投身艺术和科学领域的强烈愿望之一就是逃离痛苦、残酷和枯燥无味的现实生活,逃离自己飘忽不定的七情六欲的桎梏。--爱因斯坦
4楼2013-11-02 22:14:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

匿名

用户注销 (小有名气)

★ ★
感谢参与,应助指数 +1
wind5fsa(jjdg代发): 金币+2, 辛苦了 2013-11-04 01:18:41
本帖仅楼主可见
5楼2013-11-02 23:28:09
已阅   申请程序强帖   回复此楼   编辑   查看我的主页

Mr__Right

专家顾问 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
建议楼主用正则表达式来尝试
自己学习摸索一下还是很有意思的
文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
6楼2013-11-03 07:02:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Mr__Right

专家顾问 (著名写手)

【答案】应助回帖


wind5fsa(jjdg代发): 金币+1, 感谢参与 2013-11-04 01:18:57
Matlab 提供的正则表达式函数有三个:
regexp——用于对字符串进行查找,大小写敏感;
regexpi——用于对字符串进行查找,大小写不敏感;
regexprep——用于对字符串进行查找并替换。
楼主可以自己help一下,然后根据自己的需要确定规则就行了
文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
7楼2013-11-03 07:11:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wind5fsa

金虫 (小有名气)

引用回帖:
5楼: Originally posted by ishxiao at 2013-11-02 23:28:09
m=length(filename)-4;
recha=cha/10^(m-strdfind(filename(1:m),'.'));%
filename2=;
file=;
i=imread(file);
...

您好!strdfind这个函数怎么没有?是确定小数点位数的吗 ?
祝福
8楼2013-11-03 19:08:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

姚麦挡拆

新虫 (小有名气)

小数点命名文件名,你这是自己给自己找麻烦啊,呵呵
9楼2013-11-03 21:54:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

姚麦挡拆

新虫 (小有名气)

10楼2013-11-03 21:56:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wind5fsa 的主题更新
信息提示
请填处理意见