How can I concatenate:
A = {\'hello\'; \'hi\'; \'hey\'}
with
B = {\'Ben\'; \'Karen\'; \'Lisa\'}
with a
A faster (albeit less elegant) alternative to strcat
that concatenates strings is a combination of the sprintf
and textscan
commands:
C = [A; B];
C = textscan(sprintf('%s %s\n', C{:}), '%s', 'delimiter', '\n');
Here's the benchmark code:
A = {'hello' ; 'hi' ; 'hey'};
B = {'Ben' ; 'Karen' ; 'Lisa'};
%// Solution with strcat
tic
for k = 1:1000
C1 = strcat(A, ' ', B);
end
toc
%// Solution with sprintf and textscan
tic
for k = 1:1000
C2 = [A; B];
C2 = textscan(sprintf('%s %s\n', C2{:}), '%s', 'delimiter', '\n');
end
toc
The results are:
Elapsed time is 0.022659 seconds.
Elapsed time is 0.006011 seconds.