【发布时间】:2022-07-07 16:48:38
【问题描述】:
上下文
我正在设计一个运行大量计算并输出数字的代码。在代码的最后,我想以一种很好的方式保存所有内容,所以我的做法是转到用户指定的输出目录,创建一个新文件夹,然后运行保存过程。
问题
我的问题有两个:
-
我希望我的文件夹名称是唯一的。我正在考虑获取当前日期和时间,并从中创建一个唯一的名称和输入文件名。这有效,但它生成的文件夹名称有点神秘。是否有一些我没有听说过的良好做法/惯例可以做到这一点?
-
当我得到
datetime字符串 (tn = datestr(now);) 时,它看起来像这样:
tn =
'07-Jul-2022 09:28:54'
为了将其转换为一个好的文件名,我将'-'、' ' 和':' 字符替换为下划线,并将其附加到用户选择的输入文件名的较短版本中。我使用strrep:
tn = strrep(tn,'-','_');
tn = strrep(tn,' ','_');
tn = strrep(tn,':','_');
这很好,但它让我不得不使用 3 行代码来做到这一点。有一个不错的班轮可以做到这一点吗?更一般地说,有没有办法查找字符串中的每个非字母或数字字符并将其替换为给定字符?我敢打赌这就是 regexp 的用途,但坦率地说,我无法完全掌握正则表达式的工作原理。
【问题讨论】: