startsWith
确定字符串是否以模式开头
说明
示例
检测字符串开头的文本
创建一个包含文件名的字符串数组。确定哪些文件名以单词 data
开头。
str = ["abstract.docx","data.tar","code.m"; ... "data-analysis.ppt","results.ptx","summary.ppt"]
str = 2x3 string
"abstract.docx" "data.tar" "code.m"
"data-analysis.ppt" "results.ptx" "summary.ppt"
返回一个逻辑数组,其中每个等于 1
的元素的位置对应于 str
中一个以 data
开头的字符串的位置。
pat = "data";
TF = startsWith(str,pat)
TF = 2x3 logical array
0 1 0
1 0 0
显示以 data
开头的文件名。使用 TF
重新索引 str
。
str(TF)
ans = 2x1 string
"data-analysis.ppt"
"data.tar"
使用模式检测路径的开头
自 R2020b 开始提供
创建一个引用文件的字符串数组,包括本地文件的完整路径和远程文件的 URL。
str = ["C:\Temp\MyReport.docx"; "D:\Data\Experiment1\Trial1\Sample1.csv"; "https://example.com/Slides.pptx"]
str = 3x1 string
"C:\Temp\MyReport.docx"
"D:\Data\Experiment1\Trial1\Sample1.csv"
"https://example.com/Slides.pptx"
要查找以驱动器号开头的路径,请创建一个匹配一个字母后跟冒号的模式。
pat = lettersPattern(1) + ":"
pat = pattern
Matching:
lettersPattern(1) + ":"
确定 str
的哪些元素以该模式开头。模式 pat
与 "https:"
不匹配,因为 lettersPattern(1)
只匹配一个字母。
TF = startsWith(str,pat)
TF = 3x1 logical array
1
1
0
显示匹配的文件名。
str(TF)
ans = 2x1 string
"C:\Temp\MyReport.docx"
"D:\Data\Experiment1\Trial1\Sample1.csv"
有关创建模式对象的函数列表,请参阅pattern
。
针对多个子字符串测试字符串的开头
创建一个包含文件名的字符串数组。确定哪些文件名以 abstract
或 data
开头。
str = ["abstract.docx","data.tar.gz","mycode.m","results.ptx"]
str = 1x4 string
"abstract.docx" "data.tar.gz" "mycode.m" "results.ptx"
pat = ["abstract","data"]; TF = startsWith(str,pat)
TF = 1x4 logical array
1 1 0 0
显示以 abstract
或 data
开头的字符串。使用 TF
重新索引 str
。
str(TF)
ans = 1x2 string
"abstract.docx" "data.tar.gz"
测试字符串开头时忽略大小写
创建一个包含文件名的字符串数组。确定哪些文件名以 data
开头,忽略大小写。
str = ["DATA.TAR.GZ","data.xlsx","SUMMARY.PPT","tmp.gz"]
str = 1x4 string
"DATA.TAR.GZ" "data.xlsx" "SUMMARY.PPT" "tmp.gz"
pat = "data"; TF = startsWith(str,pat,'IgnoreCase',true)
TF = 1x4 logical array
1 1 0 0
显示以 data
开头的字符串。使用 TF
重新索引 str
。
str(TF)
ans = 1x2 string
"DATA.TAR.GZ" "data.xlsx"
确定字符向量是否以子字符串开头
创建包含文件名称的字符向量。确定名称是否以不同的子字符串开头。
chr = 'data-analysis.ppt'
chr = 'data-analysis.ppt'
TF = startsWith(chr,'data')
TF = logical
1
TF = startsWith(chr,'test')
TF = logical
0
输入参数
扩展功能
tall 数组
对行数太多而无法放入内存的数组进行计算。
C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。
用法说明和限制:
str
和pattern
必须是字符串标量、字符向量或最多包含一个字符向量的元胞数组。
基于线程的环境
使用 MATLAB® backgroundPool
在后台运行代码或使用 Parallel Computing Toolbox™ ThreadPool
加快代码运行速度。
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
分布式数组
使用 Parallel Computing Toolbox™ 在集群的组合内存中对大型数组进行分区。
用法说明和限制:
pat
必须为字符串数组、字符向量或字符向量元胞数组。
有关详细信息,请参阅Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox)。
版本历史记录
在 R2016b 中推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)