我有一个运行一系列字符串的脚本,并使用正则表达式拉出某些字符串(每个输入字符串约4个输出字符串)。
e.g. HelloStackOverflowWorld
-> Hello; Stack; Overflow; World;
理想情况下,最终输出是一个表格,我可以根据列中的字符串进行过滤。使用上面的案例,第1列第1行将为'Hello'
,第2列第1行将为'Stack'
,依此类推。
问题是,输出的大小会根据输入而改变,所以我不确定要使用的输出格式。
目前我使用了类似的东西:
if strfind(missing{ii},'hello')
miss.exch = [miss.exch;'hello'];
temp.exc = regexp(missing{ii},'(?<=\d[Q|T])(\w*?)(?=[q])','match');
miss.exc = [miss.exc;temp.exc];
temp.TQ= regexp(missing{ii},'(Qc|Tc)','match');
if strcmp(temp.TQ{1,1}, 'Tc')
miss.TQ = [miss.TQ;'variableA'];
elseif temp.TQ{1,1} == 'Qc'
miss.TQ = [miss.TQ;'variableB'];
end
else if .........
end
这显然会导致1x1结构由多个字段组成,每个字段都包含许多单元格。这使得对字符串的过滤成为一个问题!
如何定义数据并将其添加到我可以过滤的'table of strings'
?
答案 0 :(得分:3)
我认为你只是在寻找一个单元阵列。以下是他们可以做的一个简单示例:
C = {'Abc','Bcd';'Cde',[]}
strcmp(C,'Cde')
结果:
ans =
0 0
1 0
请务必检查doc cell
以了解如何访问它们。