What is the alternative for startsWith function in Matlab 2013?
12 次查看(过去 30 天)
显示 更早的评论
TF = startsWith(names_cell,pattern)
I have a snippet of code written above. The names_cell is a cell array and pattern is a string array.
I need to find an alternative in Matlab R2013b, where there is no such a function.
回答(2 个)
Walter Roberson
2019-11-8
temp = arrayfun(@(S) strncmp(names_cell, S, length(S)), pattern, 'uniform', 0);
nd = ndims(temp{1}) + 1;
TF = or(cat(nd, temp{:}), nd);
This is designed to work no matter how many dimensions names_cell has. The output should be the same size as names_cell is.
The code can be simplified for the more common case where pattern is a character vector or scalar string array.
2 个评论
Walter Roberson
2019-11-11
What is size(names_cell) and size(pattern) ?
At one point some functions shifted from giving a row vector result in some cases to giving a column vector result instead; I would need to test further on that point. I am not sure I have R2013b still installed though.
Akansha Saxena
2020-10-21
TF = cellfun(@(x) strncmpi(x, pattern, length(pattern)),names_cell);
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Introduction to Installation and Licensing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!