您的位置首页生活百科

MATLAB如何匹配正则表达式并替换

MATLAB如何匹配正则表达式并替换

的有关信息介绍如下:

MATLAB如何匹配正则表达式并替换

1.regexprep函数的最简化用法是regexprep(原字符串,正则表达式,替换子串)

如图,批量替换文件后缀名为txt.

2.使用regexprep时,在替换的子串中可以使用替换操作符(以$开头)。

$N表示正则表达式中的第n个token。

如图,在正则表达式中"."后面的是一个token,效果如图。

3.替换操作符(以$开头)还有:

$`表示匹配部分前面,$"(在正则表达式里要输入为$"")表示匹配符分后面。

效果如图。

4.替换操作符还可以是$0表示当前匹配,还可以是MATLAB表达式。

使用$0表示当前匹配子串,${upper(...)}执行函数upper。

如图,实现了对一个字符串中的单词进行首字母大写。

5.如果输入是一个字符串组成的元胞数组,则正则匹配和替换会分别作用于每个字符串,并输出等长的元胞数组。如图。

6.函数regexprep还可以有选项,如图,通过选项"preservecase",匹配时忽略大小写,但是替换时保留原来的大小写。效果如图。

7.通过选项"emptymatch",使得空匹配也可以被替换,如图用"^"匹配字符串开头之前,替换后相当于在字符串前面添加子串。

选项还有很多:

"once"表示只替换一个匹配,

一个数字N表示替换第N个匹配,

"warnings"表示显示警告信息,

"ignorecase"表示忽略大小写,

"dotexceptnewline"表示匹配"."的时候不匹配换行符,

"lineanchors"表示把^和$匹配作一行的开头和结尾(默认是整个字符串),

"freespacing"表示忽略正则表达式中字面的空格和#.要匹配空格和#需要""和"#"