Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
如何在Matlab中向量化strsplit函数,使其运行更快?谢谢
function parts = strsplit(splitstr, str) splitlen = length(splitstr); k = strfind(str, splitstr); parts = cell(length(k)+1, 1); s = 1; if isempty(k) parts{1} = str; return end for i=1:length(k) parts{i} = str(s : k(i)-1); s = k(i) + splitlen ; end parts{end} = str((k(end) + splitlen) : end); 回答: 您可以通过调用TEXTSCAN来替换函数。 str = 'testxyztest2xyztest3'; splitStr = 'xyz'; out = textscan(str,'%s','delimiter',splitStr,'multipleDelimsAsOne',1) out{1} ans = 'test' 'test2' 'test3' 更多&回答... |
![]() |
![]() |