tokens.m
来自「实现地震勘探中」· M 代码 · 共 68 行
M
68 行
function cstr=tokens(str,sep)% Decompose string into individual strings separated by "sep"%% Written by: E. R.: November 22, 2006% Last updated: May 12, 2008: Handle multi-character separator%% cstr=tokens(str,sep)% INPUT% str string% sep separator; % Default: sep = ','% OUTPUT% cstr cell vector (row) with individual strings%% EXAMPLE% cstr=tokens('aa,bbb,ccc')% cstr=tokens('aa\&bbb\&ccc&d','\&')if isempty(str) cstr=cell(1,1); returnendif nargin == 1 sep=',';endlstr=length(str);lstrh=fix(lstr/(1+length(sep)));cstr=cell(lstrh+1);for ii=1:length(str) [tok,str]=str2tok_no1(str,sep); %#ok Needs to handle multi-character separators cstr{ii}=tok; if isempty(str) cstr(ii+1:end)=[]; break endend%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%function [tok,rem]=str2tok_no1(str,sep)% Replacement for "strtok; handles multi-character separatorslsep=length(sep);lsep1=lsep-1;lstr=length(str);if lsep > lstr tok=str; rem=''; returnendfor ii=1:lstr-lsep1 if all(str(ii:ii+lsep1) == sep) tok=str(1:ii-1); rem=str(ii+lsep:end); return endendtok=str;rem='';
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?