文档

regexptranslate

将文本翻译成正则表达式

描述

例子

newStr = regexptranslate (人事处str翻译str,并返回结果newStr.您可以使用newStr中的正则表达式正则表达式regexpi,regexprep功能。输入参数人事处指定转换的类型regexptranslate执行。例如,如果您指定人事处作为“逃”,然后regexptranslate翻译特殊字符str因此它们是输出中的文字字符。newStr具有与?相同的数据类型str

例子

全部折叠

方法转换字符向量中的特殊字符regexptranslate函数。中使用结果作为正则表达式正则表达式

创建一个包含字符的字符向量' \ n '

空空的=“序列n生成一条新行。”
chr = '序列\n生成新行。'

创建一个正则表达式' \ n '作为两个连续字符的序列“\”而且“n”.自正则表达式功能解释' \ n '作为换行符,使用regexptranslate创建要转义的正则表达式' \ n '

模式= regexptranslate (“逃”' \ n '
模式= ' \ \ n '

的起始索引' \ n '空空的.为了防止正则表达式从解读' \ n '作为换行符,使用模式作为正则表达式。

idx = regexp(对应模式)
idx = 14

调用正则表达式没有逃避' \ n '.自正则表达式解释' \ n '作为换行符,它不查找中的文字字符空空的.的正则表达式函数未找到匹配项时返回空数组。

idx = regexp(空空的,' \ n '
idx = []

创建一个字符串。从R2017a开始,可以使用双引号创建字符串。

str =“把钱投进去。”
str = "把钱投进去。"

指定文本,0.02美元的,作为文字来代替文字“钱”.为了躲避“美元”而且“。”字符,使用regexptranslate

r = regexptranslate (“逃”0.02美元的
r = ' \ 0美元\ .02点'

取代“钱”使用regexprep函数。

newStr = regexprep (str,“钱”右)
newStr = "投入0.02美元。"

创建一个包含文件名的字符串数组。然后只查找以。结尾的文件名“.mat”

str = [“test1.mat”“myfile.mat”“my-matlab-script.m”...“jan30.mat”“table3.xls”
str =1 x5字符串数组列1到4 "test1。垫”“myfile。垫”“my-matlab-script。米”“jan30。表3.xls“列5”

要用正则表达式匹配字符串,请指定‘* .mat‘作为正则表达式。然后翻译通配符,‘*’,使用regexptranslate函数。

模式= regexptranslate (“通配符”‘* .mat‘
模式= ' . * \ .mat '

中查找匹配的元素str指定的正则表达式模式

= regexp匹配(str,模式)
场=1×5单元{[1]} {[1]} {0x0 double} {[1]} {0x0 double}

创建一个逻辑数组,特遣部队,包含1其中对应的元素str匹配模式.然后指数为str使用特遣部队显示以。结尾的文件名“.mat”

= ~ cellfun特遣部队(“isempty”,匹配);newStr = str (tf)
newStr =1 x3字符串数组“test1.mat”“myfile.mat”“jan30.mat”

创建一个字符向量,其中包含由空白字符分隔的单词,例如空格和换行符。

空空的=“我想我知道这是谁的树林。”;CHR = [CHR换行符。"不过他的房子在村子里"
chr =“我想我知道这是谁的树林。”不过他的房子在村子里。”

指定' \ s '作为匹配空白字符的正则表达式。然后将这些字符替换进去空空的

表达=' \ s ';newChr = regexptranslate (“灵活”空空的,表达式)
newChr = '的\ swoods \ sthese \ sare \四\ sthink \四\ sknow。\这一切罪\ shouse \ sis \ \该\ svillage \ sthough”

输入参数

全部折叠

转换类型,指定为字符向量或字符串标量。可以使用表中的选项翻译特殊字符或通配符,或用匹配的正则表达式替换文本。

类型的翻译

描述

“逃”

翻译所有特殊字符str,如“美元”“。”'?'“(”,因此在使用时,它们被视为文字字符正则表达式regexpi,regexprep.翻译插入一个反斜杠或转义字符,“\”,在每个特殊字符之前str

“通配符”

翻译所有通配符和“。”字符str以便在使用时将它们视为字面通配符和句点正则表达式regexpi,regexprep.的所有实例将被替换‘*’”。*’,所有'?'“。”的所有实例“。”“\”。

“灵活”

替换文本str使用匹配文本的正则表达式。如果您指定“灵活”,然后指定一个正则表达式作为替换:newStr = regexptranslate(“灵活”,str,表达).的表达式输入可以是字符向量或字符串标量。

这种语法等价于newStr = regexprep (str,表情,regexptranslate(“逃脱”,表达))

输入文本,指定为字符向量、字符向量的单元格数组或字符串数组。

之前介绍过的R2006a