首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > PB >

请教怎样比较字符串相似度

2012-06-16 
请问怎样比较字符串相似度比如ls_string1ABCD牌电脑ls_string2efgh牌电脑 有3个字符串相似,[解决办

请问怎样比较字符串相似度
比如ls_string1="ABCD牌电脑" 
ls_string2="efgh牌电脑" 有3个字符串相似,

[解决办法]
match(),like函数
[解决办法]
写PB 代码,大致这个思路,(没时间实践,有兴趣可以再探讨):
string ls_a = 'ABCD牌电脑'
string ls_b = 'EFGHIJK牌电脑'

将ls_a 中的字符逐个装入一字符数组变量ls_tmp1 ,再逐个与ls_b 比较后将ls_b 里存在的ls_tmp1 中的元素记忆入另一字符串数组ls_tmp2 ,如果没有符合条件的 ls_tmp ,则相似度为0 ,如果有,则至少相似度为1。
再将ls_tmp2 里的每个字符元素加上其在 ls_a 里相邻的后一个字符,成两个字符的字符串数组,再与 ls_b 进行比较 .......
依此类推, 逐个淘汰, 直到找到最长的相似的字符串。

程序方法可以递归。


[解决办法]
有一种特殊情况
string ls_a = 'ABCD牌电脑'
string ls_b = 'E电FG脑HIJK牌' 顺序被打乱了 也算相似么?
所以要定义好标准

热点排行
Bad Request.