声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2992|回复: 10

[编程技巧] 如何快速生成如下的字符串?

[复制链接]
发表于 2007-1-19 11:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
我现在要处理很多数据文件,文件名为 abc00001,abc00002,... abc00009,abc00010,... abc00099,abc00100,...abc00879.  准备把这些文件名给放到一个数组里面去。

不知道如果用循环,ii 为变量,如何不用if语句来判断 ii 的数值,快速生成这个字符串数组? 原来用if 判断 ii 的数值大小,然后前面加上abc和不同的0的个数,感觉很繁琐...

当然,不用循环的方式更好,不知道有没有?

谢谢!
回复
分享到:

使用道具 举报

发表于 2007-1-19 11:40 | 显示全部楼层
试试如下代码:
%%%%%%%%%%%%%%
for k=1:100
     strcat('abc00',num2str(k))
end
%%%%%%%%%%%%%%
 楼主| 发表于 2007-1-19 12:09 | 显示全部楼层
谢谢指点,不过你的代码生成的是 abc001,abc002,...abc009,abc0010。。 ,而我想要的是abc010这样的形式,即文件名中的数字位数加1,前面的0就要减少1个... 呵呵
发表于 2007-1-19 13:02 | 显示全部楼层
原帖由 心灯 于 2007-1-19 12:09 发表
谢谢指点,不过你的代码生成的是 abc001,abc002,...abc009,abc0010。。 ,而我想要的是abc010这样的形式,即文件名中的数字位数加1,前面的0就要减少1个... 呵呵



  1. for k=1:100
  2.      a(k) = sprintf('%.5d',k);
  3. end
复制代码

[ 本帖最后由 eight 于 2007-1-19 18:40 编辑 ]

评分

1

查看全部评分

发表于 2007-1-19 14:51 | 显示全部楼层

回复

to 心灯:不好意思,没有仔细看.
再试试如下代码:
%%%%%%%%%%%%%
for k=1:100
     a{k}= sprintf('%.5d',k); %%%eight的程序我好象运行不了,不过思路是对的
     b{k}=strcat('abc',a{k});
end
b
%%%%%%%%%%%%%

评分

1

查看全部评分

发表于 2007-1-19 15:11 | 显示全部楼层
()、[]、与{}的区别是什么?准确的说这应该是变量元素引用的问题吧。
a{}用在单元型变量元素引用中,还有对单元型变量a()显示的是它的简写形式;
a()用在向量、矩阵的元素引用中
a[]没有这个形式吧。

[ 本帖最后由 geoer 于 2007-1-19 15:24 编辑 ]
发表于 2007-1-19 15:19 | 显示全部楼层

回复 #6 geoer 的帖子

您可以再另开一个帖子

专门讨论三个括号的区别

对于初学者 是很有帮助的
发表于 2007-1-19 15:25 | 显示全部楼层
原帖由 xjzuo 于 2007-1-19 14:51 发表
to 心灯:不好意思,没有仔细看.
再试试如下代码:
%%%%%%%%%%%%%
for k=1:100
     a{k}= sprintf('%.5d',k); %%%eight的程序我好象运行不了,不过思路是对的
     b{k}=strcat('abc',a{k});
end
b
%%%% ...



唉,不好意思,感冒的时候头脑反应是迟钝点的了,居然把matlab的数组当作了c来使用,汗一个,我的意思就是存放到数组中
 楼主| 发表于 2007-1-19 16:19 | 显示全部楼层
不错,谢谢几位的帮助。:@)   问题可以解决了。
发表于 2007-1-21 13:37 | 显示全部楼层
原帖由 geoer 于 2007-1-19 15:11 发表
()、[]、与{}的区别是什么?准确的说这应该是变量元素引用的问题吧。
a{}用在单元型变量元素引用中,还有对单元型变量a()显示的是它的简写形式;
a()用在向量、矩阵的元素引用中
a[]没有这个形式吧。



()算术表达式中的应用就不用说了,它还可以用于函数的参数,或者向量矩阵的下标
[]用于表示向量或者矩阵
{}一般用于单元数组

没有a[]的形式
发表于 2009-6-17 14:46 | 显示全部楼层
非常有启发性 谢谢各位的讨论
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-17 02:53 , Processed in 0.076186 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表