Home > ctdcal > strjoin.m

strjoin

PURPOSE ^

STRJOIN Join strings in a cell array.

SYNOPSIS ^

function str = strjoin(sep, varargin)

DESCRIPTION ^

STRJOIN Join strings in a cell array.

   STRJOIN(SEP, STR1, STR2, ...) joins the separate strings STR1, STR2, ...
   into a single string with fields separated by SEP, and returns that new
   string.

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function str = strjoin(sep, varargin)
0002 %STRJOIN Join strings in a cell array.
0003 %
0004 %   STRJOIN(SEP, STR1, STR2, ...) joins the separate strings STR1, STR2, ...
0005 %   into a single string with fields separated by SEP, and returns that new
0006 %   string.
0007 
0008 %   Examples:
0009 %
0010 %     strjoin('-by-', '2', '3', '4')
0011 %
0012 %   returns '2-by-3-by-4'.
0013 %
0014 %     list = {'fee', 'fie', 'foe.m'};
0015 %     strjoin('/', list{:}).
0016 %
0017 %   returns 'fee/fie/foe.m'.
0018 %
0019 %   This function is inspired by Perl' function join().
0020 
0021 %   Author:      Peter J. Acklam
0022 %   Time-stamp:  2003-10-13 11:13:55 +0200
0023 %   E-mail:      pjacklam@online.no
0024 %   URL:         http://home.online.no/~pjacklam
0025 
0026    % Check number of input arguments.
0027    error(nargchk(1, Inf, nargin));
0028 
0029    % Quick exit if output will be empty.
0030    if nargin == 1
0031       str = '';
0032       return
0033    end
0034 
0035    if isempty(sep)
0036       % special case: empty separator so use simple string concatenation
0037       str = [ varargin{:} ];
0038    else
0039       % varargin is a row vector, so fill second column with separator (using scalar
0040       % expansion) and concatenate but strip last separator
0041       varargin(2,:) = { sep };
0042       str = [ varargin{1:end-1} ];
0043    end

Generated on Fri 08-Oct-2004 11:57:17 by m2html © 2003