matlab正则表达式的简单表示
来源:互联网 发布:怎么汉化软件 编辑:程序博客网 时间:2024/05/17 04:45
正则表达式在处理字符串及文本时显得十分方便,在perl, python等脚本语言,以及java, .net等平台上都支援正则表达式。事实上,在MATLAB中也提供了正则表达式的支持。主要包含三个常用的函数:regexp(), regexpi(), regexprep()。其中regexp()用来匹配正则表达式,regexpi()完成类似的功能,但是忽略字符串的大小写,regexprep()则按照指定的pattern完成替换功能。
MATLAB正则表达式主要包含以下特殊匹配符号:
. 匹配任何单个字符(包括空白字符)
[abc] 匹配括号里包含的任何单个字符,a或b或c
[^abc] 匹配括号中字符以外的任何单个字符,任何除a和b和c外的字符
[a-x] 匹配a-x范围内的任何单个字符
\s 匹配任何空白字符,等效于[ \f\n\r\t\v]
\S 匹配任何非空白字符,等效于[^ \f\n\r\t\v]
\w 匹配任何字母,数字或下划线字符,对于英文字符集,等效于[a-zA-Z_0-9]
\W 匹配任何除了字母,数字或下划线以外的字符,对于英文字符集,等效于[^a-zA-Z_0-9]
\d 匹配任何数字,等效于[0-9]
\D 匹配任何数字以外的字符,等效于[^0-9]
分组和捕获
(expr) 分组并捕获
(?:expr) 分组但不捕获
expr1|expr2 匹配expr1或者expr2
非匹配操作符(常用于在正则表达式内添加注释)
(?# blabla) blabla是注释内容
占位符
^ 字符串起始
$ 字符串结尾
\< 单词起始
\> 单词结尾
环视
(?=expr) 从当前位置向前看(字符串向右的方向),测试是否匹配expr
(?!expr) 从当前位置向前看(字符串向右的方向),测试是否不匹配expr
(?<=expr) 从当前位置向后看(字符串向左的方向),测试是否匹配expr
(?<!expr) 从当前位置向后看(字符串向左的方向),测试是否不匹配expr
定义数量
expr{m,n} 至少m次,最多n次
expr{m,} 至少m次,没有上限
expr{n} 正好n次
expr? 出现0次或1次
expr* 出现任意次(可以是0次)
expr+ 出现1次或更多次
捕获
(expr) 捕获匹配得到的字符串
\N 匹配第N次捕获的字符串
$N 引用第N次捕获的字符串
(?(N)s1|s2) 如果存在第N次捕获的字符串,则匹配s1,否则匹配s2
给捕获命名
(?<name>expr) 给捕获的字符串起名字叫name
\k<name> 匹配名叫name的被捕获的字符串
$<name> 引用名叫name的被捕获字符串
(?(name) s1 | s2) 我想您应该知道是什么意思
0 0
- matlab正则表达式的简单表示
- 正则表达式的字符表示
- 正则表达式表示的IP
- matlab的正则表达式[转]
- 正则表达式 附正则表达式表示空的方法
- 简单的正则表达式
- 简单的正则表达式
- 简单的正则表达式
- 常用正则表达式的表示方法
- 常用正则表达式的表示方法
- 一个表示可有可无的正则表达式
- 正则表达式中双引号、单引号的表示
- 正则表达式 :(?s)(?i) ?: 表示的意思
- 正则表达式的常用表示方法
- matlab矩阵的表示和简单操作
- matlab矩阵的表示和简单操作
- matlab矩阵的表示和简单操作
- matlab矩阵的表示和简单操作
- MongoDB文档翻译-mongo Shell-使用mongo Shell帮助
- Redis
- 关于图像处理时傅里叶谱和相的一点思考
- GPG入门教程
- 浅谈继承的那些细节知识点--java中继承的简单应用。
- matlab正则表达式的简单表示
- kinect2.0同分辨率采集RGB-D图像并保存,并显示人体骨架
- Ubuntu开发环境搭建(2)【安装arm-linux-gcc-4.4.3交叉编译环境】
- LeetCode:Relative Ranks
- 排序--插入排序
- redis与memcached比较
- 1089.Insert or Merge (25)...to be continued...
- Crackme 30
- MongoDB文档翻译-mongo Shell-给mongo Shell编写脚本