MATLAB正则表达式③:分组操作
1、首先,用法'(expr)',即将部分表达式用圆括号括起来,会将其视为一个组且视为一个标记。这样的用途就是,通过'\N'可以匹配前面匹配到的第N个标记。
2、'(expr)'后面可以加限定符,将会把组视作整体进行限定。比如'(ABC){4}'将会匹配ABCABCABCABC
3、使用符号'(?:expr)'和'(expr)'一样有成组效果,但佯镧诱嚣只是匹配,不会存为标记(token)。如图:'潮贾篡绐C3H8'在上面的匹配中是第2个token;'C3H8'在下面的匹配中是第1个token,因为第一个组里加上了'?:'。
4、使用符号'(?>expr)'与'(?:expr)'的区别是,前者匹配expr时不会回溯。效果如下。
5、使用符号'(expr1|expr2|expr3...)'可以匹配expr1或者e垓矗梅吒xpr2或者expr3...如果exprn匹配成功嬴猹缥犴则会无视后面的。如果不成功则会尝试exprn+1这一个符号可以与前面的'?:'/'?>'搭配使用。
6、使用分组的另一个技巧是,可以在regexprep函数进行子串替换时,使用$n访问匹配到的内容。效果如图。
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:55
阅读量:70
阅读量:50
阅读量:61
阅读量:81