MATLAB中insertBefore函数用法

目录

语法

说明

示例

在子字符串前插入文本

使用模式在文件名前插入文本

在指定位置前插入子字符串

在字符向量中的指定位置前插入文本


insertBefore函数的功能是在指定的子字符串前插入字符串。

语法

cs 复制代码
newStr = insertBefore(str,pat,newText)
newStr = insertBefore(str,pos,newText)

说明

**newStr = insertBefore(str,pat,newText)**将在 str 中 pat 所指定的子字符串前插入 newText,并将结果返回为 newStr。如果 pat 在 str 中出现多次,insertBefore 将在每次出现的 pat 前插入文本。

如果 str 是一个字符串数组或字符向量元胞数组,insertBefore 将在 str 的每个元素中插入 newText。输出参数 newStr 的数据类型与 str 相同。

**newStr = insertBefore(str,pos,newText)**将在 str 中 pos 所指定的位置前插入 newText 指定的文本。

示例

在子字符串前插入文本

创建字符串数组,并在子字符串前插入文本。可以使用双引号创建字符串。

cs 复制代码
str = "bread cheese wine"
str = 
"bread cheese wine"

在字符串中的每个空格字符前插入一个逗号。insertBefore 函数将在每个匹配的子字符串前插入文本。

cs 复制代码
newStr = insertBefore(str," ",",")
newStr = 
"bread, cheese, wine"

将子字符串插入到字符串数组的每个元素中。当将不同子字符串指定为位置时,它们必须包含在与 str 具有相同大小的字符串数组或元胞数组中。

cs 复制代码
str = ["The quick fox jumps";"over the dog"]
str = 2x1 string
    "The quick fox jumps"
    "over the dog"

newStr = insertBefore(str,[" fox";" dog"],[" brown";" lazy"])
newStr = 2x1 string
    "The quick brown fox jumps"
    "over the lazy dog"

使用模式在文件名前插入文本

创建一个由文件名(包括完整路径)组成的字符串数组。

cpp 复制代码
str = ["C:\Temp\MyReport.docx";
       "C:\Data\Experiment1\Trial1\Sample1.csv";
       "C:\Temp\Slides.pptx"]
str = 3x1 string
    "C:\Temp\MyReport.docx"
    "C:\Data\Experiment1\Trial1\Sample1.csv"
    "C:\Temp\Slides.pptx"

在每条路径的末尾、紧挨文件名的前面插入一个新文件夹名称。要匹配文件名,请创建一个模式,该模式匹配从最后一个 "\" 字符直到字符串末尾的所有其余文本。使用 wildcardPattern 函数匹配除 "\" 之外的所有字符,使用 textBoundary 函数匹配字符串的末尾。然后调用 insertBefore 以在匹配的文本前插入新文件夹名称。

cpp 复制代码
pat = "\" + wildcardPattern("Except","\") + textBoundary
pat = pattern
  Matching:

    "\" + wildcardPattern("Except","\") + textBoundary

filenames = insertBefore(str,pat,"\20200601")
filenames = 3x1 string
    "C:\Temp\20200601\MyReport.docx"
    "C:\Data\Experiment1\Trial1\20200601\Sample1.csv"
    "C:\Temp\20200601\Slides.pptx"

在指定位置前插入子字符串

创建字符串数组,并指定要插入子字符串的位置。可以使用双引号创建字符串。

cpp 复制代码
str = "James Maxwell"
str = 
"James Maxwell"

在第七个字符前插入子字符串。

cs 复制代码
newStr = insertBefore(str,7,"Clerk ")
newStr = 
"James Clerk Maxwell"

将子字符串插入到字符串数组的每个元素中。当使用数值数组指定不同位置时,它们必须与输入字符串数组具有相同大小。

cpp 复制代码
str = ["James Maxwell";"Carl Gauss"]
str = 2x1 string
    "James Maxwell"
    "Carl Gauss"

newStr = insertBefore(str,[7;6],["Clerk ";"Friedrich "])
newStr = 2x1 string
    "James Clerk Maxwell"
    "Carl Friedrich Gauss"

在字符向量中的指定位置前插入文本

创建字符向量,并在指定位置前插入文本。

cpp 复制代码
chr = 'mushrooms and onions'
chr = 
'mushrooms and onions'

在第十个字符位置前插入文本。

cs 复制代码
newChr = insertBefore(chr,10,', peppers,')
newChr = 
'mushrooms, peppers, and onions'

在子字符串前插入文本。

cs 复制代码
newChr = insertBefore(chr,' and',', peppers,')
newChr = 
'mushrooms, peppers, and onions'

参数说明

str --- 输入文本

输入文本,指定为字符串数组、字符向量或字符向量元胞数组。

pat --- 标记结束位置的文本或模式

str 中标记插入文本的结束位置的文本或模式,指定为以下项之一:

  • 字符串数组

  • 字符向量

  • 字符向量元胞数组

  • ​pattern 数组(自 R2020b 开始提供)

如果 str 是字符串数组或字符向量元胞数组,则可以在 str 的每个元素中插入文本。可以指定插入项在 str 的每个元素中都有相同的结尾,或有不同的结尾。

  • 要指定相同的结尾,请将 pat 指定为字符向量、字符串标量或 pattern 对象。

  • 要指定不同的结尾,请将 pat 指定为字符串数组、字符向量元胞数组或 pattern 数组。

pos --- 结束位置

结束位置,指定为数值数组。

如果 str 是一个字符串数组或字符向量元胞数组,则 pos 可以是与 str 具有相同大小的数值标量或数值数组。

newText --- 要插入的文本

要插入的文本,指定为字符串数组、字符向量或字符向量元胞数组。

如果 str 是一个字符串数组或字符向量元胞数组,则 newText 可以是与 str 具有相同大小的字符向量、字符串标量、字符串数组或元胞数组。

newStr --- 输出文本

输出文本,以字符串数组、字符向量或字符向量元胞数组形式返回。str 和 newStr 具有相同的数据类型。

相关推荐
青红光硫化黑17 分钟前
React基础之项目创建
开发语言·javascript·ecmascript
小鹏编程30 分钟前
【C++教程】C++中的基本数据类型
开发语言·c++·教程·少儿编程
熊峰峰31 分钟前
C++第十节:map和set的介绍与使用
开发语言·c++
Mr.NickJJ1 小时前
Swift系列02-Swift 数据类型系统与内存模型
开发语言·ios·swift
Goober Airy1 小时前
PHP:格式化JSON为PHP语法格式
开发语言·php
白水先森1 小时前
牵引线标注:让地图信息更清晰的ArcGIS Pro技巧
开发语言·javascript·经验分享·arcgis·arcgispro
筱涵哥1 小时前
Python默认参数详细教程:默认参数位置错误,动态默认值,__defaults__属性,动态默认值处理,从入门到实战的保姆级教程
开发语言·python
咩咩觉主2 小时前
C# &Unity 唐老狮 No.7 模拟面试题
开发语言·unity·c#
大丈夫在世当日食一鲲2 小时前
Java中用到的设计模式
java·开发语言·设计模式
却道天凉_好个秋3 小时前
c++ 嵌入汇编的方式实现int型自增
开发语言·汇编·c++