Matlab笔记23:字符串的提取、替换、插入和删除,提取满足条件的字符
1.提取满足条件的字符
提取分为三种情况:提取某字符之前的所有字符使用extractBefore函数,提取某字符之后的所有字符使用extractAfter函数,提取两个字符之间的所有字符使用extractBetween函数,程序示例如下:
names = ["Steve Jobs"
" Albert Einstein"
"艾萨克 es牛顿"]
extractAfter(names,"S") %提取之后的字符,按元素逐个提取,没有查找到给定字符的匹配项返回缺失值
extractAfter(names,"s") %找到匹配项,但没有可以提取值,返回空
extractAfter(names,"e") %若有多个匹配项,按匹配到的第一个开始提取
extractAfter(names,"艾萨克")
extractAfter(names," ")
extractBefore(names,"e") %提取之前的字符
extractBetween(names,"e","s") %提取之间的字符
2.替换
替换分为两种情况:把某字符直接替换为另一字符使用函数replace,查找和替换两个字符之间的字符使用replaceBetween函数,程序示例如下:
replace(names,"牛顿","Neton")
replaceBetween(names,"S"," ","mith")
3.插入新的字符
插入分为两种情况:在某字符之前插入使用insertBefore函数,在某字符之后插入使用insertAfter函数,程序示例如下:
insertAfter(names,"e","*")
insertBefore(names,"Albert","?")
insertBetween (names,"e","s","$") %未定义
4.删除字符
删除分为两种情况:直接删除某字符使用erase函数,删除两个字符之间的所有字符使用eraseBetween函数,程序示例如下:
erase(names,"Jobs")
erase(names," ")
eraseBetween(names,"e","s")
5.删除前导和尾随字符
删除前导或者尾随字符使用strip函数,前导设置left属性,尾随设置right,若不提供删除的字符,则默认删除前导或者尾随的空格,程序示例如下:
a=[" aaa bbb ";" aaa bbb "]
strip(a) % strip:删除字符串中的前导和尾随字符
strip(a,'left') %删除左侧的空格
strip(" aaa bbb",'right','b') %删除右侧的b字符
deblank(a) %删除尾随空格,前面文章讲过
strtrim(a) %删除前导和尾随空格,前面文章讲过
End