eraseBetween
删除起始点和结束点之间的子字符串
语法
描述
例子
删除子字符串之间的文本
创建字符串数组。然后删除出现在子字符串之间的文本。
str =“敏捷的棕色狐狸”
str = "敏捷的棕色狐狸"
删除出现在子字符串之间的文本“快”
而且“狐狸”
.的eraseBetween
函数删除文本,但不删除“快”
或“狐狸”
.
newStr = eraseBetween(str,“快”,“狐狸”)
newStr = "敏捷的狐狸"
从字符串数组的每个元素中删除子字符串。当指定不同的子字符串作为开始和结束指示符时,它们必须包含在字符向量的字符串数组或单元格数组中,其大小与str
.
STR = [“敏捷的棕色狐狸跳跃”;“在懒惰的狗上方”]
str =2 x1字符串"敏捷的棕色狐狸" "跳过懒狗"
startPos = [“快”;“的”];endPos = [“狐狸”;“狗”];newStr = eraseBetween(str,startPos,endPos)
newStr =2 x1字符串"敏捷的狐狸" "跳过狗"
删除图案之间的文本
创建一个字符串数组,其中的文本由标记括起来。
STR = [“< courseName >微积分我< / courseName >”;学期“< >”2020年秋季学期< / >;“<时间表> MWF 8:00-8:50 < /时间表>”]
str =3 x1字符串"Calculus I " "Fall 2020 " "MWF 8:00-8:50 "
删除标记所包含的文本。属性创建匹配任何开始标记和结束标记的模式wildcardPattern
函数。
startPat =" < "+ wildcardPattern +“>”
startPat =模式匹配:"<" +通配符模式+ ">"
endPat =" < /+ wildcardPattern +“>”
endPat =模式匹配:"" +通配符模式+ ">"
然后调用eraseBetween
函数。
newStr = eraseBetween(str,startPat,endPat)
newStr =3 x1字符串"" " " " "
有关创建模式对象的函数列表,请参见模式
.
删除起始位置和结束位置之间的子字符串
创建字符串数组并删除指定为数字的开始和结束位置之间的子字符串。
str =《埃德加·艾伦·坡》
str = "埃德加·爱伦·坡"
删除子字符串。若要删除中间名和一个空格字符,请指定字符串中的第6和第11个位置。删除的子字符串包括第6和第11个字符。
newStr = eraseBetween(str,6,11)
newStr = "埃德加·坡"
从字符串数组的每个元素中删除子字符串。当使用数值数组指定不同的开始和结束位置时,它们必须与输入字符串数组的大小相同。
STR = [《埃德加·艾伦·坡》;路易莎·梅·奥尔科特]
str =2 x1字符串《埃德加·艾伦·坡》《路易莎·梅·奥尔科特》
startsPos = [6;7];endPos = [11;10];newStr = eraseBetween(str,startsPos,endPos)
newStr =2 x1字符串《埃德加·坡》《路易莎·奥尔科特》
删除包含和排除边界的文本
从具有强制包含或排他边界的字符串数组中删除文本。eraseBetween
删除包含边界时的边界。eraseBetween
如果边界是独占的,则将边界作为输出字符串数组的一部分返回。
str =“小|中|大”
STR = "小|中|大"
删除第6到13位之间的文本,但不要删除这些位置上的字符。
newStr = eraseBetween(str,6,13,“界限”,“独家”)
newStr = "小||大"
删除两个子字符串之间的文本,以及子字符串本身。
str =“敏捷的棕色狐狸跳过了懒狗”
str = "敏捷的棕色狐狸跳过懒狗"
newStr = eraseBetween(str,“棕色”,“懒”,“界限”,“包容”)
newStr = "快狗"
删除字符向量中位置之间的文本
创建一个字符向量并删除开始和结束位置之间的文本。
空空的=蘑菇,辣椒和洋葱
CHR =“蘑菇、辣椒和洋葱”
newChr = eraseBetween(chr,10,19)
newChr = '蘑菇和洋葱'
删除子字符串之间的文本。
newChr = eraseBetween(chr,“蘑菇”,”和“)
newChr = '蘑菇和洋葱'
输入参数
str
- - - - - -输入文本
字符串数组|特征向量|字符向量的单元格数组
输入文本,指定为字符串数组、字符向量或字符向量的单元格数组。
startPat
- - - - - -标记起始位置的文本或图案
字符串数组|特征向量|字符向量的单元格数组|模式
数组
标记要删除文本的起始位置的文本或图案,指定为下列之一:
字符串数组
特征向量
字符向量的单元格数组
模式
数组
如果str
是字符串数组或单元格数组的字符向量,那么您可以删除子字符串从每个元素str
.的每个元素中可以指定子字符串都具有相同的开始,也可以指定子字符串具有不同的开始str
.
要指定相同的开始,请指定
startPat
作为字符向量、字符串标量或模式
对象。要指定不同的开始,请指定
startPat
作为字符串数组,单元格数组的字符向量,或模式
数组中。
例子:eraseBetween (str,“AB”、“YZ”)
删除所有字符。AB
而且YZ
在每一个元素中str
.
例子:如果str
是一个2
——- - - - - -1
那么是字符串数组eraseBetween (str(“AB”;“成品”)(“YZ”;“圣”))
删除所有字符。AB
而且YZ
在str (1)
,以及成品
而且圣
在str (2)
.
endPat
- - - - - -标记结束位置的文本或图案
字符串数组|特征向量|字符向量的单元格数组|模式
数组
标记要删除的文本的结束位置的文本或图案,指定为下列之一:
字符串数组
特征向量
字符向量的单元格数组
模式
数组
如果str
是字符串数组或单元格数组的字符向量,那么您可以删除子字符串从每个元素str
.您可以指定子字符串在的每个元素中都具有相同的结尾或具有不同的结尾str
.
要指定相同的结束,请指定
endPat
作为字符向量、字符串标量或模式
对象。要指定不同的端点,请指定
endPat
作为字符串数组,单元格数组的字符向量,或模式
数组中。
例子:eraseBetween (str,“AB”、“YZ”)
删除所有字符。AB
而且YZ
在每一个元素中str
.
例子:如果str
是一个2
——- - - - - -1
那么是字符串数组eraseBetween (str(“AB”;“成品”)(“YZ”;“圣”))
删除所有字符。AB
而且YZ
在str (1)
,以及成品
而且圣
在str (2)
.
startPos
- - - - - -起始位置
数字数组
起始位置,指定为数值数组。
如果str
是字符串数组或单元格数组的字符向量,那么startPos
可以是与?大小相同的数值标量或数值数组str
.
例子:eraseBetween (str、5、9)
的每个元素中从第5到第9个位置的所有字符str
.
例子:如果str
是一个2
——- - - - - -1
那么是字符串数组eraseBetween (str [5; 10], [9; 21])
删除中从第5到第9个位置的所有字符str (1)
,从第10位到第21位str (2)
.
endPos
- - - - - -结束位置
数字数组
结束位置,指定为数值数组。
如果str
是字符串数组或单元格数组的字符向量,那么endPos
可以是与?大小相同的数值标量或数值数组str
.
例子:eraseBetween (str、5、9)
的每个元素中从第5到第9个位置的所有字符str
.
例子:如果str
是一个2
——- - - - - -1
那么是字符串数组eraseBetween (str [5; 10], [9; 21])
删除中从第5到第9个位置的所有字符str (1)
,从第10位到第21位str (2)
.
界限
- - - - - -边界的行为
“包容”
|“独家”
边界行为,指定为“包容”
或“独家”
.当包含边界行为时,由先前参数指定的开始和结束将包含在删除的文本中。如果边界行为是排他性的,则不包括开始和结束。
输出参数
newStr
-输出文本
字符串数组|字符向量|单元格字符向量数组
输出文本,作为字符串数组、字符向量或字符向量的单元格数组返回。str
而且newStr
具有相同的数据类型。
扩展功能
高大的数组
使用行数超过内存容量的数组进行计算。
C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。
使用注意事项和限制:
str
,startPat
,endPat
必须是字符串标量、字符向量或包含不超过一个字符向量的单元格数组。
线程环境
使用MATLAB®在后台运行代码backgroundPool
或使用并行计算工具箱™加速代码ThreadPool
.
这个函数完全支持基于线程的环境。金宝app有关更多信息,请参见在线程环境中运行MATLAB函数.
分布式阵列
使用并行计算工具箱™跨集群的组合内存对大型数组进行分区。
版本历史
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。