文档帮助中心文档
查找两个字符串或文档之间的编辑距离
d = editDistance (str1 str2)
d = editDistance (document1 document2)
d = editDistance (___,名称,价值)
例子
d= EditDistance(str1,str2)返回转换所需插入、删除和替换的最低数量的字素(用于人类理解的字符的Unicode术语)str1到str2.
d= EditDistance(str1,str2)
d
str1
str2
d= EditDistance(文件1,文件2.)返回转换所需的令牌插入、删除和替换的最低数量文件1到文件2..
d= EditDistance(文件1,文件2.)
文件1
文件2.
d= EditDistance(___,名称,值)使用一个或多个名称值对参数指定其他选项。
d= EditDistance(___,名称,值)
名称,值
全部折叠
找到字符串之间的编辑距离“文本分析”和“文本分析”.默认情况下,编辑距离是将一个字符串更改为另一个字符串所需的图形插入,删除和替换的总数。
“文本分析”
str1 =“文本分析”;str2 =“文本分析”;
找到编辑距离。
d = 2.
这意味着将第一个字符串更改为第二个字符串需要两个编辑。例如:
替换 - 替代角色“t”到一个“s”:“文本分析”到“文本analysics”.
“t”
“s”
“文本analysics”
删除 - 删除字符“C”:“文本analysics”到“文本分析”.
“C”
找到两个令牌文档之间的编辑距离。对于令牌化文档输入,默认情况下,编辑距离是将一个文档更改为另一个文档所需的令牌插入,删除和替换的总数。
str1 =“这是早餐的时候。”;document1 = tokenizeddocument(str1);str2 =“现在该睡觉了。”;document2 = tokenizeddocument(str2);
d = 3.
这意味着将第一个文档更改为第二个文档需要三次编辑。例如:
插入 - 插入单词“现在”.
“现在”
替换-替换单词“对”与”到“.
“对”
”到“
替换-替换单词“早餐”与“睡觉”.
“早餐”
“睡觉”
的editDistance函数在默认情况下返回将一个字符串更改为另一个字符串所需的字素插入、删除和替换的最低数量。要在计算中包含交换操作,请使用'swapcost'选项。
editDistance
'swapcost'
首先,找到字符串之间的编辑距离“MATALB”和“matlab”.
“MATALB”
“matlab”
str1 =“MATALB”;str2 =“matlab”;d = editDistance (str1 str2)
一个可能的编辑是:
用第二个“一种”与“L”:(“MATALB”到“MATLLB”).
“一种”
“L”
“MATLLB”
用第二个“L”与“一种”:(“MATLLB”到“matlab”).
交换成本(交换两个相邻字母的成本)的默认值是inf.这意味着交换不计入编辑距离。要包含交换,请设置'swapcost'选项1。
inf
d = EditDistance(str1,str2,'swapcost'1)
d = 1
这意味着有一个动作。例如,交换相邻的字符“一种”和“L”.
若要计算两个单词之间的编辑距离并指定编辑不区分大小写,请指定自定义替代cost函数。
首先,计算字符串之间的编辑距离“matlab”和“MathWorks”.
“MathWorks”
d = editDistance (“matlab”,“MathWorks”)
d = 8.
这意味着将第一个字符串更改为第二个需要8次编辑。例如:
替换 - 替代角色“一种”与“一种”.(“matlab”到“MaTLAB”)
“MaTLAB”
替换 - 替代角色“T”与“t”.(“MaTLAB”到“MatLAB”)
“T”
“MatLAB”
替换 - 替代角色“L”与“h”.(“MatLAB”到“MathAB”)
“h”
“MathAB”
替换 - 替代角色“一种”与“w”.(“MathAB”到“MathWB”)
“w”
“MathWB”
替换 - 替代角色“b”与“o”.(“MathWB”到“MathWo”)
“b”
“o”
“MathWo”
插入 - 插入字符“r”.(“MathWo”到“mathwor”)
“r”
“mathwor”
插入 - 插入字符“k”.(“mathwor”到“mathwork”)
“k”
“mathwork”
插入 - 插入字符“s”.(“mathwork”到“MathWorks”)
计算编辑距离并指定自定义替换成本函数酪蛋白肌肉用来,列在示例的最后。自定义函数酪蛋白肌肉用来如果两个输入按大小写相同或不同,则返回0,否则返回1。
酪蛋白肌肉用来
d = editDistance (“matlab”,“MathWorks”,“SubstituteCost”@caseInsensitiveSubstituteCost)
d = 6.
这意味着将第一个字符串更改为第二个字符串的总成本是6。例如:
替换(代价0)-替换字符“一种”与“一种”.(“matlab”到“MaTLAB”)
替换(代价0)-替换字符“T”与“t”.(“MaTLAB”到“MatLAB”)
替换(代价1)-替换角色“L”与“h”.(“MatLAB”到“MathAB”)
替换(代价1)-替换角色“一种”与“w”.(“MathAB”到“MathWB”)
替换(代价1)-替换角色“b”与“o”.(“MathWB”到“MathWo”)
插入(成本1) - 插入字符“r”.(“MathWo”到“mathwor”)
插入(成本1) - 插入字符“k”.(“mathwor”到“mathwork”)
插入(成本1) - 插入字符“s”.(“mathwork”到“MathWorks”)
定制成本函数
自定义函数酪蛋白肌肉用来如果两个输入按大小写相同或不同,则返回0,否则返回1。
函数成本= caseInsensitivesubstitutututututectutectut(grapheme1,grapheme2)如果drawtext (grapheme1) == drawtext (grapheme2) = 0;其他的成本= 1;结束结束
源字符串,指定为字符串阵列,字符向量或字符向量的单元格数组。
如果str1包含多个字符串,然后str2必须和str1或标量。
数据类型:char|细绳|细胞
char
细绳
细胞
目标字符串,指定为字符串数组,字符向量或字符向量的单元格数组。
如果str2包含多个字符串,然后str1必须和str2或标量。
tokenizedDocument
源文档,指定为atokenizedDocument数组中。
如果文件1包含多个文档,然后文件2.必须和文件1或标量。
目标文件,指定为atokenizedDocument数组中。
如果文件2.包含多个文档,然后文件1必须和文件2.或标量。
指定可选的逗号分隔的对名称,值论点。姓名参数名和价值为对应值。姓名必须出现在引号内。可以以任意顺序指定多个名称和值对参数name1,value1,...,namen,valuen.
姓名
价值
name1,value1,...,namen,valuen
editDistance(“MATALB”、“MATLAB”、“SwapCost”,1)
'insertcost'
插入由逗号分隔的字符对组成的字素或令牌的开销'insertcost'和非负标量或功能手柄。
如果'insertcost'是一个函数句柄,那么功能必须接受一个输入并返回将输入插入源的成本。例如:
为字符串输入editDistance,成本函数必须具有表单成本= Func(图形),函数返回插入的代价图形进入str1.
成本= Func(图形)
图形
用于文件输入editDistance,成本函数必须具有表单成本= Func(令牌),函数返回插入的代价令牌进入文件1.
成本= Func(令牌)
令牌
例子:“InsertCost”,2
“InsertCost”,2
数据类型:单身的|双倍的|int8|INT16|INT32.|INT64.|uint8.|uint16|UINT32.|UINT64|function_handle
单身的
双倍的
int8
INT16
INT32.
INT64.
uint8.
uint16
UINT32.
UINT64
function_handle
'deletecost'
删除图形或令牌的成本,指定为逗号分隔的配对'deletecost'和非负标量或功能手柄。
如果'deletecost'是函数句柄,则该函数必须接受单个输入并返回从源删除输入的代价。例如:
为字符串输入editDistance,成本函数必须具有表单成本= Func(图形),函数返回删除的成本图形从str1.
用于文件输入editDistance,成本函数必须具有表单成本= Func(令牌),函数返回删除的成本令牌从文件1.
例子:'deletecost',2
'deletecost',2
“SubstituteCost”
替换由逗号分隔对组成的字素或令牌的代价“SubstituteCost”和非负标量或功能手柄。
如果“SubstituteCost”是功能句柄,那么该功能必须完全接受两个输入,并返回代替源中的第二个输入的成本。例如:
为字符串输入editDistance,成本函数必须具有表单成本= func(grapheme1,grapheme2),该功能返回代替成本的情况下grapheme1.与grapheme2.在str1.
成本= func(grapheme1,grapheme2)
grapheme1.
grapheme2.
用于文件输入editDistance,成本函数必须具有表单成本= func(token1,token2),该功能返回代替成本的情况下token1与token2在文件1.
成本= func(token1,token2)
token1
token2
例子:“SubstituteCost”,2
“SubstituteCost”,2
交换两个相邻的字母或标记的代价,指定为逗号分隔对,由'swapcost'和非负标量或功能手柄。
如果'swapcost'是函数句柄,则该函数必须接受两个输入,并返回源文件中第一个输入与第二个输入交换的代价。例如:
为字符串输入editDistance,成本函数必须具有表单成本= func(grapheme1,grapheme2),该功能返回交换相邻图形的成本grapheme1.和grapheme2.在str1.
用于文件输入editDistance,成本函数必须具有表单成本= func(token1,token2),该函数返回交换相邻令牌的成本token1和token2在文件1.
例子:“SwapCost”,2
“SwapCost”,2
编辑距离,作为非负标量返回。
默认情况下,该函数使用Levenshtein距离:将一个字符串转换为另一个字符串所需的最低次数,删除和替换数。
对于其他常用的编辑距离,请使用以下选项:
“SwapCost”,1
'insertcost',inf,'deletecost',inf
用语|EditDistanceSearcher.|knnsearch|rangesearch.|splitGraphemes|tokenizedDocument
用语
EditDistanceSearcher.
knnsearch
rangesearch.
splitGraphemes
您拥有此示例的修改版本。您是否希望使用您的编辑打开此示例?
你点击一个链接对应于这个MATLAB命令:
在MATLAB命令窗口中输入它来运行命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,以便在可用的地方进行翻译内容,并查看本地活动和优惠。根据您的位置,我们建议您选择:.
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
联系您当地的办公室