0

我有以下格式的字符串:

fileName.jpg,10,20,10,10,...,12,14,True

基本上,我有一个带有逗号分隔值的字符串。第一个值是一个字符串,然后是一个包含 100 个值的数组,最后是另一个字符串是真或假。

有没有办法或直接将这些值读入 3 个变量?两个字符串和一个数组?值数组可能包含n\a我想要视为-1或类似的值,或者使用单元格数组并为这些值设置一个空单元格?你能为这类问题推荐一些东西吗?

4

2 回答 2

1

您可以使用textscan

n = 100; % number of integers between filename and logical values

M = textscan(str, ['%s' repmat('%d',1, n) '%s'], 'delimiter', ',',...
    'TreatAsEmpty', 'n\a', 'EmptyValue', -1, 'CollectOutput', true);

结果M是一个单元格数组,第一个单元格中包含文件名,第二个单元格中包含 100 个整数值,最后一个单元格中包含一个包含逻辑值的字符串。

于 2013-02-23T21:16:23.867 回答
0

您可以使用strsplit和提取字符串中的值并将它们存储在单独的变量中

代码示例:

a = strsplit("fileName.jpg,10,20,10,10,...,12,14,True",",")
fileName = a(1)
flag = a(end)
data = a(2:end-1)
于 2013-02-23T18:47:20.733 回答