目录
replace函数的功能是查找并替换一个或多个子字符串。
语法
newStr = replace(str,old,new)
说明
newStr = replace(str,old,new) 将所有出现的子字符串 old 替换为 new。如果 old 包含多个子字符串,则 new 必须与 old 具有相同的大小,或者必须为单个子字符串。
示例
替换字符串数组中的子字符串
替换文件名称列表中的占位符文本。创建一个字符串数组。
str = ["<ROOT_DIR>\MyData\data.tar.gz";
"<ROOT_DIR>\MyScripts\cleandata.m";
"<ROOT_DIR>\MyScripts\preprocess.m";
"<ROOT_DIR>\MyScripts\publishResults.m"]
str = 4x1 string
"<ROOT_DIR>\MyData\data.tar.gz"
"<ROOT_DIR>\MyScripts\cleandata.m"
"<ROOT_DIR>\MyScripts\preprocess.m"
"<ROOT_DIR>\MyScripts\publishResults.m"
将 <ROOT_DIR> 替换为表示文件路径名称的字符串。
old = "<ROOT_DIR>";
new = "C:\MyProject";
newStr = replace(str,old,new)
newStr = 4x1 string
"C:\MyProject\MyData\data.tar.gz"
"C:\MyProject\MyScripts\cleandata.m"
"C:\MyProject\MyScripts\preprocess.m"
"C:\MyProject\MyScripts\publishResults.m"
替换匹配模式的子字符串
创建包含电话号码的字符串(自 R2020b 开始提供)。
str = "Hide the numbers in: (508) 555-1234"
str =
"Hide the numbers in: (508) 555-1234"
使用 digitsPattern 函数创建与一个数字匹配的模式。
pat = digitsPattern(1)
pat = pattern
Matching:
digitsPattern(1)
用 "#" 字符替换所有数字。
newStr = replace(str,pat,"#")
newStr =
"Hide the numbers in: (###) ###-####"
创建另一个只匹配电话号码的模式。
pat = "(" + digitsPattern(3) + ") " + digitsPattern(3) + "-" + digitsPattern(4)
pat = pattern
Matching:
"(" + digitsPattern(3) + ") " + digitsPattern(3) + "-" + digitsPattern(4)
在还包含另一个数字的字符串中替换电话号码。
str = "12 calls made to: (508) 555-1234";
newStr = replace(str,pat,"(###) ###-####")
newStr =
"12 calls made to: (###) ###-####"
替换多个子字符串
将回车符替换为换行符。创建一个字符串数组。
str = ["Submission Date: 11/29/15\r";
"Acceptance Date: 1/20/16\r";
"Contact: john.smith@example.com\r\n"]
str = 3x1 string
"Submission Date: 11/29/15\r"
"Acceptance Date: 1/20/16\r"
"Contact: john.smith@example.com\r\n"
替换回车符。
old = {'\r\n','\r'};
new = '\n';
newStr = replace(str,old,new)
newStr = 3x1 string
"Submission Date: 11/29/15\n"
"Acceptance Date: 1/20/16\n"
"Contact: john.smith@example.com\n"
参数说明
str — 输入文本
输入文本,指定为字符串数组、字符向量或字符向量元胞数组。
old — 要替换的子字符串
要替换的子字符串,指定为下列项之一:
字符串数组
字符向量
字符向量元胞数组
pattern 数组(自 R2020b 开始提供)
new — 新的子字符串
新的子字符串,指定为字符串数组、字符向量或字符向量元胞数组。
提示
要对重叠模式执行多次替换,请使用 strrep 函数。