1. 程式人生 > >matlab字串的常用操作

matlab字串的常用操作

% 字串處理 
a='  a';b='b  b';c='cccc';m='' 
% 獲取字串長度 
length(a)     
% 連線兩個字串,每個字串最右邊的空格被裁切 
d=strcat(a,c)  
length(d) 
% 連線多行字串,每行長度可不等,自動把非最長字串最右邊補空格 
% 使與最長字串相等,會忽略空字串 
e=strvcat(a,b,m) 
size(e) 
% char連線,空字串會被空格填滿 
f=char(a,b,m) 
size(f)

strcmp    比較兩個字串是否完全相等,是,返回真,否則,返回假 
strncmp    比較兩個字串前n個字元是否相等,是,返回真,否則,返回假 
strcm

pi    比較兩個字串是否完全相等,忽略字母大小寫 
strncmpi   比較兩個字串前n個字元是否相等,忽略字母大小寫

%strfind(A,B) 在A中查詢B的位置,返回B字串首字母的位置

isletter  檢測字串中每個字元時否屬於英文字母 
isspace    檢測字串中每個字元是否屬於格式字元(空格,回車,製表,換行符等) 
isstrprop  檢測字元每一個字元是否屬於指定的範圍 
a='d sdsdsd 15#'; 
b=isletter(a) 
c=isspace(a)

% 字串替換和查詢   
strrep 進行字串替換,區分大小寫 
%   strrep(str1,str2,str3) 
%      它把str1中所有的str2字串用str3來替換

strfind(str,patten) 查詢str中是否有pattern,返回出現位置,沒有出現返回空陣列 
findstr(str1,str2)   查詢str1和str2中,較短字串在較長字串中出現的位置,沒有出現返回空陣列 
strmatch(patten,str) 檢查patten是否和str最左側部分一致 
strtok(str,char)     返回str中由char指定的字串前的部分和之後的部分, 
mm='youqwelcome'; 
[mm1,mm2]=strtok(mm,'q')

blanks(n)            建立有n個空格組成的字串 
deblank

(str)          裁切字串的尾部空格 
strtrim(str)          裁切字串的開頭和尾部的空格,製表,回車符

lower(str)           將字串中的字母轉換成小寫 
upper(str)            將字串中的字母轉換成大寫  
sort(str)              按照字元的ASCII值對字串排序

num2str         將數字轉換為數字字串 
str2num          將數字字串轉換為數字 
mat2str          將陣列轉換成字串 
int2str          把數值陣列轉換為整數數字組成的字元陣列

------------------------------

CELL陣列中的字串比較:

c=cell(2,1); 
c(1,1)=cellstr('xxx'); 
c(2,1)=cellstr('yyyyyyy'); 
strcmp(c{1,1},c{2,1});

------------------------------

isequal   Test arrays for equality, 可用來比較兩個字元陣列是否相同。