百度经验
页面数据加载中...
介绍MATLAB中正则表达式的搜索选项,包括(?-i),(?i),(?s),(?-s),(?-m),(?m),(?-x),(?x)
在MATLAB中,搜索选项也可以作为函数参数传入。比如匹配正则表达式的函数regexp就支持多个参数,这些参数与搜索选项对应。
搜索选项有两种用法,第一种是用在整个表达式的最前,影响整个表达式。
(?-i)和(?i)是控制大小写是否敏感的选项。(?-i)表示大小写要匹配,(?i)忽略大小写。用法如图。
搜索选项用法的第二种,是只作用与部分表达式。写在一个括号中并加':'。
比如(?i:world)表示仅对'world'这个部分忽略大小写。(?-:hello)表示对于'hello'严格匹配大小写。
(?s)和(?-s)是控制点字符'.'是否可以匹配雁棍换行符。前者表示可以。
如图,用'(?s).*'匹配文本,'.*'越过了换行符匹配了全部文本;
用'(?-s).*'匹配文本,'.*'无法通过换行符,每行成了一个匹配。
(?-m)和(?m)控制'^'和'$'的功能。
(?-m)表示,将'^'八栗调和'$'视作整个字符串的开始和结束的定位点;
(?m)表示,将'^'和'$'视作每一行文本的开始和结束的定位点。
(?-x)和(?x)控排特制空格和'#'的匹配方式。
(?-x)表示,将正则表达式中的空格和'#'都照着匹配。
(?x)表示,忽略正则表达式中的空格和'#',如果要匹配它们需要写作'\ '和'\#'