文件

strrep.

查找并替换子字符串

句法

newStr = strrep (str,旧,新)

描述

例子

newStr = strrep (str老的的)替换所有发生的老的str

例子

全部收缩

创建一个字符向量并替换其中的子字符串。

Chr =.“敏捷的棕色狐狸”
chr ='快速棕色狐狸'
newchr = strrep(chr,'快的'“狡猾”的)
newchr ='狡猾的棕色狐狸'

创建字符串数组。从R2017A开始,您可以使用双引号创建字符串。

str = [“快速棕色狐狸”;“和懒狗”]
str =2x1字符串数组"敏捷的棕色狐狸" "和懒惰的狗"

替换阵列的每个元素中的子字符串。

新= strrep(str,'这''一种'的)
newstr =2x1字符串数组“一个快速的棕色狐狸”和一只懒狗“

将占位符内容替换为单元格数组,'___',在第二个单元格数组中使用不同的值。

c1 = {的收到日期:___;'接受日期:___'};老='___';new = {'2016-09-06';'2016-10-11'};C2 = strrep(C1,旧,新)
C2 =2x1单元格阵列{'接收日期:2016-09-06'}{'接收日期:2016-10-11'}

创建具有重复,重叠模式的字符向量。比较使用结果strrep.代替, 和regexprep.函数替换模式。

重复='abc 2 def 22 ghi 222 jkl 2222'
重复= 'abc 2 def 22 hi 222 JKL 2222'

找出重复模式的指数'22'使用strfind.功能。strfind.查找模式的所有实例,包括重叠的实例。

indices = strfind(重复,'22'的)
索引=1×6.11 18 19 26 27 27 28

代替'22'使用strrep..当你使用时strrep.,它替换了所识别的每一个实例strfind.

使用_strrep = strrep(重复,'22'‘*’的)
使用_strep ='abc 2 def * ghi ** jkl ***'

代替'22'使用代替.它不会替换每个实例strrep.取代。

使用_replace = replace(重复,'22'‘*’的)
Using_replace = 'abc 2 def * ghi *2 JKL **'

代替'22'使用regexprep..结果与使用的结果相同代替功能。

使用_regexprep = regexprep(重复,'22'‘*’的)
使用_regexprep ='abc 2 def * ghi * 2 jkl **'

strrep.在替换任何实例之前查找模式的所有实例。然而,代替regexprep.函数一旦在文本中找到它,就会替换模式的实例。

输入参数

全部收缩

输入文本,指定为字符串数组,字符向量或字符向量阵列。

数据类型:细绳|char|细胞

要替换的子字符串,指定为字符串数组、字符向量或字符向量的单元格数组。

如果老的是一个非卡尔串或小区数组,那么它必须与尺寸相同str.否则,它可以是字符向量或字符串标量。

数据类型:细绳|char|细胞

新子字符串,指定为字符串阵列,字符向量或字符向量的单元格数组。

如果是一个非卡尔串或小区数组,那么它必须与尺寸相同str.否则,它可以是字符向量或字符串标量。

数据类型:细绳|char|细胞

算法

  • strrep.函数找不到空字符向量或空字符串进行替换。也就是说,何时str老的两者都包含空字符向量('')或空字符串(),strrep.不将空字符向量或字符串替换为包含内容

  • 在更换文本之前,strrep.的所有实例老的str, 像strfind.功能。用于重叠模式,strrep.执行多个替代。

扩展能力

之前介绍过的R2006a