使用正则表达式替换文档的文字文本
替换开始的单词“S”
, 结尾“e”
,它们至少有一个字符。匹配整个单词,使用“^”
匹配单词的开始和“$”
匹配单词的末尾。
文档= tokenizeddocument([......“一句话的一个例子”“第二句话”])
文档= 2x1令叫象征文件:6个令牌:短句的一个例子4令牌:第二句话
表达=“^ s(\ w +)e $”;替换=“事物”;newdocuments = regexprep(文档,表达式,替换)
newdocuments = 2x1 tokenizeddocument:6个代币:一个简短的东西4令牌:第二件短缺
如果你不使用“^”
和“$”
,然后您可以匹配单词的子字符串。用“_”替换所有元音。
表达=“[AEIOU]”;替换=“\ _”;newdocuments = regexprep(文档,表达式,替换)
newdocuments = 2x1 tokenizeddocument:6个令牌:_n _x_mpl_ _f _ sh_rt s_nt_nc_ 4令牌:_ s_c_nd sh_rt s_nt_nc_
替换单词的变体“走”
通过捕获跟随的字母“走”
。
文档= tokenizeddocument([“我步行”“他们走路”“我们正在走路”])
文档= 3x1令叫鳕文件:2个令牌:我走了2令牌:他们走了3个代币:我们正在走路
表达=“走路(\ w *)”;替换=“提升1美元”;newdocuments = regexprep(文档,表达式,替换)
newdocuments = 3x1 tokenizeddocument:2令牌:我上升2令牌:他们升起了3令牌:我们正在上升
文件
-输入文件令人畏缩的鳕文
大批输入文档,指定为a令人畏缩的鳕文
大批。
表达
-正则表达式正则表达式,指定为字符向量,字符向量的小区数组或字符串数组。每个表达式都可以包含指定模式以匹配模式的字符,元字符,运算符,令牌和标志str.
。
下表描述了正则表达式的元素。
元字符
元字符代表字母,字母范围,数字和空格字符。使用它们来构建一个广义的字符模式。
metacharacter |
描述 |
例子 |
---|---|---|
|
任何单一的字符,包括空格 |
|
|
方形括号内包含的任何字符。字面上对待以下字符: |
|
|
方括号内未包含的任何字符。字面上对待以下字符: |
|
|
范围内的任何角色 |
|
|
任何字母,数字或下划线字符。对于英语字符集, |
|
|
任何不是字母,数字或下划线的字符。对于英语字符集, |
|
|
任何空白字符;相当于 |
|
|
任何非空白空间字符;相当于 |
|
|
任何数字数字;相当于 |
|
|
任何非原因的性格;相当于 |
|
|
八万价值的特征 |
|
|
十六进制价值的特征 |
|
字符表示
操作员 |
描述 |
---|---|
|
警报(哔哔) |
|
背板 |
|
表格饲料 |
|
新队 |
|
回车 |
|
水平标签 |
|
垂直标签 |
|
任何具有特殊含义的字符,在详细信息中,您想要匹配的正则表达式(例如,使用 |
量词
量词指定模式必须在匹配文本中发生的次数。
量词 |
发生的次数 |
例子 |
---|---|---|
|
连续0或更多次。 |
|
|
0次或1次。 |
|
|
连续1次或更多次。 |
|
|
至少
|
|
|
至少
|
|
|
确切地 相当于 |
|
量化器可以出现在下表中描述的三种模式。问:表示上一表中的任何量词。
模式 |
描述 |
例子 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
贪婪的表达:匹配尽可能多的字符。 |
鉴于文本 文本 p> td>', 表达方式 文本 p> td>'
懒惰的表达:必要时匹配很少的字符。 鉴于文本 文本 p> td>', 表达方式 占有表达:尽可能匹配,但不要重新扫描文本的任何一部分。 鉴于文本 文本 p> td>', 表达方式 |
分组运营商
分组运算符允许您捕获令牌,将一个运算符应用于多个元素,或在特定组中禁用回溯。
分组运营商 |
描述 |
例子 |
---|---|---|
|
表达式和捕获令牌的组元素。 |
|
|
小组,但不要捕获令牌。 |
没有分组, |
|
组原子。不要在组内背包以完成匹配,并不会捕获令牌。 |
|
|
匹配表达式 如果有匹配 你可以包括 |
|
锚
表达式中的锚匹配输入文本或单词的开头或结尾。
锚 |
匹配...... |
例子 |
---|---|---|
|
输入文本的开头。 |
|
|
输入文本的结尾。 |
|
|
一个词的开始。 |
|
|
一个词的结尾。 |
|
PookAround断言
LookAround断言查找立即在预期匹配之前立即或遵循预期匹配的模式,但不是匹配的一部分。
指针仍然存在于当前位置,并且与对应的字符测试
表达未被捕获或丢弃。因此,看法断言可以匹配重叠的字符组。
PookAround断言 |
描述 |
例子 |
---|---|---|
|
展望匹配的人物 |
|
|
展望不匹配的字符 |
|
|
看起来搭配匹配的人物 |
|
|
看起来不匹配的人物 |
|
如果您指定了一个看法断言前表达式,操作相当于逻辑和
。
手术 |
描述 |
例子 |
---|---|---|
|
匹配两者 |
|
|
匹配 |
|
逻辑和有条件的运营商
逻辑和条件运算符允许您测试给定条件的状态,然后使用结果确定哪个模式,如果有的话,以匹配下一个模式。这些运营商支持逻辑万博1manbetx要么
, 和如果
要么如果别的
状况。
条件可以是令牌,loesArweround运算符或表格的动态表达式(?@cmd)
。动态表达式必须返回逻辑或数值。
条件运营商 |
描述 |
例子 |
---|---|---|
|
匹配表达式 如果有匹配 |
|
|
如果条件 |
|
|
如果条件 |
|
令牌运营商
令牌是匹配文本的部分,它通过括在括号中的正则表达式的部分来定义。您可以在文本(序数令牌)中的序列中引用令牌,或者为更容易的代码维护和可读输出分配令牌的名称。
序号令牌运营商 |
描述 |
例子 |
---|---|---|
|
在令牌中捕获符合随附表达式的字符。 |
|
|
匹配 |
|
|
如果是 |
|
命名为令牌运营商 |
描述 |
例子 |
---|---|---|
|
捕获命名令牌符合随附表达式的字符。 |
|
|
匹配所提到的令牌 |
|
|
如果找到命名令牌,则匹配 |
|
笔记
如果表达式已嵌套括号,MATLAB®捕获与括号集合的令牌相对应。例如,给定搜索模式'(和(y | rew))'
,Matlab创造了一个令牌'安德鲁'
但不是'是'
要么'rew'
。
动态正则表达式
动态表达式允许您执行MATLAB命令或正则表达式以确定要匹配的文本。
括在一起动态表达式的括号不是创建捕获组。
操作员 |
描述 |
例子 |
---|---|---|
|
解析 解析后, |
|
|
执行由此表示的matlab命令 |
|
|
执行由此表示的matlab命令 |
|
在动态表达式中,使用以下运算符定义替换文本。
替换运营商 |
描述 |
---|---|
|
当前匹配的输入文本的部分 |
|
在当前匹配之前的输入文本的部分 |
|
当前匹配的输入文本的部分(使用 |
|
|
|
命名为令牌 |
|
MATLAB执行命令时返回的输出, |
评论
人物 |
描述 |
例子 |
---|---|---|
(?#评论) |
在正则表达式中插入注释。匹配输入时忽略注释文本。 |
|
搜索标志
搜索标志修改匹配表达式的行为。在表达式中使用搜索标志的替代方法是通过选项
输入参数。
旗帜 |
描述 |
---|---|
(?-一世) |
匹配信箱(默认为 |
(?一世) |
不匹配信箱(默认为 |
(?s) |
匹配点( |
(?-s) |
使用非换行符的任何字符匹配模式中的点。 |
(?-m) |
匹配 |
(?M) |
匹配 |
(?-X) |
包括匹配时的空格字符和注释(默认值)。 |
(?X) |
匹配时忽略空间字符和注释。采用 |
标志修改的表达式可以在括号之后出现,例如
(?i)\ w *
或者在括号内,与冒号(:
), 如
(?我:\ w *)
后一句话允许您更改一部分更大表达式的行为。
数据类型:char
|细胞
|细绳
代替
-替换文本替换文本,指定为字符向量,字符向量的小区数组或字符串数组,如下所示:
如果代替
是一个字符矢量和表达
是一个细胞阵列的字符向量,然后regexprep.
为每个表达式使用相同的替换文本。
如果代替
是一个细胞阵列N
字符向量和表达
是一个字符矢量,然后regexprep.
尝试N
匹配和替代品。
如果两者代替
和表达
是字符向量的单元格阵列,然后它们必须包含相同数量的元素。regexprep.
每两对代替
具有相应元素的元素表达
。
替换文本可以包括常规字符,特殊字符(例如标签或新行)或替换运算符,如下表所示。
替换运营商 |
描述 |
---|---|
|
当前匹配的输入文本的部分 |
|
在当前匹配之前的输入文本的部分 |
|
当前匹配的输入文本的部分(使用 |
|
|
|
命名为令牌 |
|
MATLAB执行命令时返回的输出, |
操作员 |
描述 |
---|---|
|
警报(哔哔) |
|
背板 |
|
表格饲料 |
|
新队 |
|
回车 |
|
水平标签 |
|
垂直标签 |
|
任何具有特殊含义的字符,在详细信息中,您想要匹配的正则表达式(例如,使用 |
数据类型:char
|细胞
|细绳
您单击了与此MATLAB命令对应的链接:
在MATLAB命令窗口中输入它来运行命令。Web浏览器不支持MATLAB命令。万博1manbetx
您还可以从以下列表中选择一个网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。