Matlab处理字符串正则表达式
1.取得部分字符串数组
咱们有一个字符串 file='20131030_113109.TemporaryAlias.Poly5';函数
简单操做举例:spa
>> a=file(7) %取字符串中任意一个元素翻译
a =regexp
3orm
>> a=file(3:10) %取字符串中任意几个元素blog
a =token
131030_1rem
>> a=file(3:end) %取字符串中任意几个元素
a =
131030_113109.TemporaryAlias.Poly5
2.字符串操做相关函数
char(S1,S2,„)
利用给定的字符串或单元数组建立字符数组
double(S)
将字符串转化成ASC码形式
cellstr(S)
利用的给定的字符数组建立字符串单元数组
blanks(n)
生成一个由n个空格组成的字符串
deblank(S)
删除尾部的空格
eval(S) evalc(S)
使用MATLAB解释器求字符串表达式的值
ischar(S)
判断是否是字符串数组
iscellstr(C)
判断是否是字符串单元数组
isletter(S)
判断是否是字母
isspace(s)
判断是否是空格
strcat(S1,S2,„)
将多个字符串水平竖直排列
strvcat(S1,S2,„)
将多个字符串竖直排列
strcmp(S1,S2)
判断字符串是否相等
strncmp(S1,S2,n)
判断前n个字符串是否相等
strcmpi(S1,S2)
判断字符串是否相等(忽略大小写)
strncmpi(S1,S2,n)
判断前n个字符串是否相等(忽略大小写)
strtrim(S1)
删除结尾的空格
findstr(S1,S2)
查找
strfind(S1,S2)
在S1种查找S2 strjust(S1,type) 按照指定的type调整一个字符串数组
strmatch(S1,S2)
查找要求的字符串的下标
strrep(S1,S2,S3)
将字符串S1中出现的S2用S3代替
strtok(S1,D)
查找S1 中的第一个给定的分隔符以前和以后的字符串
upper(S)
将一个字符串成大写
lower(S)
将一个字符串转换为小写
num2str(k)
将数字转换成字符串
int2str(k)
将整数型转换为字符串
mat2str(k)
将矩阵转换为字符串,供eval使用 str2double(S) 将字符串数组转化为数值数
sprintf(S)
建立含有指定格式的字符串
sscanf(S)
按照指定的控制格式读取字符串
3.regexp() regexpi() regexp()
regexp() 匹配正则表达式(大小写敏感)
regexp(string,expr)
[matchstart,matchend,tokenindices,matchstring,tokenstring,tokenname,splitstring] = regexp(string,expr)
[selected_outputs] = regexp(string,expr,outselect)
regexp(string,expr,options)
regexpi() 匹配正则表达式(大小写不敏感)
regexpi(string,expr)
[matchstart,matchend,tokenindices,matchstring,tokenstring,tokenname,splitstring] = regexpi(string,expr)
[selected_outputs] = regexpi(string,expr,outselect)
regexpi(string,expr,options)
regexprep() 使用正则表达式替换字符串
s = regexprep('str', 'expr', 'repstr')
s = regexprep('str', 'expr', 'repstr', options)
regexptranslate() 将字符串翻译成正则表达式
s2 = regexptranslate(type, s1)
strfind() 查找字符串1在字符串2中的坐标
k = strfind(str, pattern)
k = strfind(cellstr, pattern)
strread() 按格式对字符串
A = strread('str')
[A, B, ...] = strread('str')
[A, B, ...] = strread('str', 'format')
[A, B, ...] = strread('str', 'format', N)
[A, B, ...] = strread('str', 'format', N, param, value, ...)
strtok() 选择字符串某部分
token = strtok(str)token = strtok(str, delimiter)[token, remain] = strtok('str', ...)