如何在 Matlab 中查找和替换字符串

How to find and replace a string in Matlab

所以这是我的问题:

我在元胞数组中有一个 Matlab 中的姓名列表。

我自动为每个名字创建目录和 .mat 文件。

我的问题是其中一些名称包含“/”,因此在我创建目录时一切都出错了……

所以我想找到一种有效的方法来查找“/”并替换它们。

到目前为止,我已经尝试使用 findstr 函数找到它们。然后它给了我一个单元格数组,其中包含出现“/”的索引。因此,当名称不包含任何“/”时,它会 returns {[]} 并且当函数找到它时,它会 returns {[i]}。 现在我想要一个逻辑条件,说明如果 findstr 不为空则执行某些操作。我试过 isempty 函数,但它不起作用(它永远不会为空……)

那么有人对此有解决方案吗?

谢谢

使用regexprep替换字符:

list = {'aaa', 'bb/cc', '/dd/'};
replace_from = '/'; %// character to be replaced
replace_to = '_'; %// replacing character
list_replaced = regexprep(list, replace_from, replace_to);

给予

list_replaced = 
    'aaa'    'bb_cc'    '_dd_'