strrep
查找并替换子字符串
描述
例子
替换字符向量中的文本
创建一个字符向量并替换其中的子字符串。
空空的=“敏捷的棕色狐狸”
chr =“敏捷的棕色狐狸”
newChr = strrep(chr,“快速”,“狡猾”)
newChr =“狡猾的棕色狐狸”
替换字符串数组中的文本
创建一个字符串数组。从R2017a开始,可以使用双引号创建字符串。
STR = [“敏捷的棕色狐狸”;"还有懒狗"]
str =2x1字符串数组"敏捷的棕色狐狸" "和懒惰的狗"
替换数组中每个元素的子字符串。
newStr = strrep(str,“的”,“一个”)
newStr =2x1字符串数组"一只敏捷的棕色狐狸" "一只懒惰的狗"
用多个值替换子字符串
替换单元格数组中的占位符内容,“___”
,在第二个单元格数组中使用不同的值。
C1 = {“接收日期:___”;“接受日期:___”};老=“___”;New = {“2016-09-06”;“2016-10-11”};C2 = strrep(C1,old,new)
C2 =2x1单元阵列{'接收日期:2016-09-06'}{'接受日期:2016-10-11'}
替换重复图案
用重复重叠的图案创建一个字符向量。比较使用的结果strrep
,取代
,regexprep
函数来替换模式。
重复='abc 2 def 22 ghi 222 JKL 2222'
重复次数= 'abc 2 def 22 ghi 222 JKL 2222'
找出重复模式的指标“22”
使用strfind
函数。strfind
找到模式的所有实例,包括重叠的实例。
索引= strfind(重复,“22”)
指数=1×611 18 19 26 27 28
取代“22”
使用strrep
.当你使用strrep
,它将替换由strfind
.
Using_strrep = strrep(重复,“22”,‘*’)
Using_strrep = 'abc 2 def * ghi ** JKL ***'
取代“22”
使用取代
.它不能取代每一个实例strrep
替换。
Using_replace = replace(重复,“22”,‘*’)
Using_replace = 'abc 2 def * hi *2 JKL **'
取代“22”
使用regexprep
.的结果与使用取代
函数。
Using_regexprep = regexprep(重复,“22”,‘*’)
Using_regexprep = 'abc 2 def * ghi *2 JKL **'
strrep
在替换任何实例之前查找模式的所有实例。然而,取代
而且regexprep
函数一旦在文本中找到模式的实例,就立即替换它。
输入参数
str
—输入文本
字符串数组|特征向量|字符向量的单元格数组
输入文本,指定为字符串数组、字符向量或字符向量的单元格数组。
数据类型:字符串
|字符
|细胞
老
—要替换的子字符串
字符串数组|特征向量|字符向量的单元格数组
要替换的子字符串,指定为字符串数组、字符向量或字符向量的单元格数组。
数据类型:字符串
|字符
|细胞
新
—新子串
字符串数组|特征向量|字符向量的单元格数组
新子字符串,指定为字符串数组、字符向量或字符向量的单元格数组。
数据类型:字符串
|字符
|细胞
算法
的
strrep
函数没有找到空字符向量或空字符串进行替换。也就是说,当str
而且老
两者都包含空字符向量(”
)或空字符串(""
),strrep
的内容不替换空字符向量或字符串新
.在替换文本之前,
strrep
的所有实例老
在str
,如strfind
函数。对于重叠的模式,strrep
执行多个替换。
扩展功能
高大的数组
使用行数超过内存容量的数组进行计算。
此函数支持高数组,但有以下限金宝app制:
原始字符串必须是字符串的高数组或字符向量的高单元格数组。
旧字符串和新字符串输入可以是单个字符串或具有相同大小的高字符串数组。
有关更多信息,请参见用于内存不足数据的高数组.
C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。
使用注意事项和限制:
str
,老
,新
必须是字符串标量或字符向量。生成的代码以1 × 0字符数组的形式返回空输出。
分布式阵列
使用并行计算工具箱™跨集群的组合内存分区大型数组。
R2006a之前介绍过
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。