概述
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
regexp @ matlab
- 前言
- 一、怎么用?
- 二、Example
- 1.run
- 2. result
- 3.简化返回
- 总结
前言
regexp是Regular expression 各取前三个字母组合成的命令。含义一目了然,做regular expression match(正则表达匹配,类似的python中是re包)
一、怎么用?
– [S, E, TE, M, T, NM, SP] = regexp (STR, PAT)
– […] = regexp (STR, PAT, “OPT1”, …)
两种表达,一种是全员式,输入STR字符串,和PAT 待匹配的模式;
输出:
S: start索引
E: 结束索引
TE:Token Extents 口令内容,即Pattern中被()匹配中的部分;
M: match 被匹配中的子字串,cell结构(元胞数组)
T:token,口令匹配中的元胞数组字符串
NM:name, 命名结构体
SP: split, 用pat分割的字符串元胞数组
二、Example
1.run
[S,E,TE,M,T,NM,SP]=regexp("BW20MisReallySmall,AtleastBW80MisGoodBW160",'BW(d+)')
- 注意(octave环境中)这里的pat需要是单引号, matlab中’'一对单引号是char array,一对双引号“”是字符串。字符串可以用“+”直接连接。char array必须用 strcat()
2. result
S =
1 27 38
E =
4 30 42
TE =
{
[1,1] =
3 4
[1,2] =
[1,3] =
40 42
}
M =
{
[1,1] = BW20
[1,2] = BW80
[1,3] = BW160
}
T =
{
[1,1] =
{
[1,1] = 20
}
[1,2] =
{
[1,1] = 80
}
[1,3] =
{
[1,1] = 160
}
}
NM =
1x3 struct array containing the fields:
SP =
{
[1,1] =
[1,2] = MisReallySmall,Atleast
[1,3] = MisGood
[1,4] =
}
3.简化返回
只想要特定的部分,比如匹配中字符串怎么办?
增加第三个选项,比如“tokens”
ret = regexp("BW20MisReallySmall,AtleastBW80MisGoodBW160",'BW(d+)', "tokens")
结果
ret{1}
ans =
{
[1,1] = 20
}
总结
演示了regrep函数的用法,包括全量返回式以及简化返回式两种
最后
以上就是霸气世界为你收集整理的matlab中builtin的regexp用法前言一、怎么用?二、Example总结的全部内容,希望文章能够帮你解决matlab中builtin的regexp用法前言一、怎么用?二、Example总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复