当前位置:  开发笔记 > 编程语言 > 正文

测量字符串的相同性(在Javascript中)

如何解决《测量字符串的相同性(在Javascript中)》经验,为你挑选了0个好方法。

原则上这个问题可以解决与语言无关的问题,但具体来说我正在寻找一个Javascript实现.

是否有任何库可以让我测量两个字符串的"相同性"?更一般地说,有没有任何算法可以实现这一点,我可以实现(在Javascript中)?

以下面的字符串为例

地球下地幔中自旋跃迁中单晶镁碳化物的异常弹性

并且还要考虑以下,略微调整的字符串.请注意不同的粗体部分

在Sart - Transition的Eart hs下Mant le中,Sin gle Cry stal Magne sio-Sid erite的异常弹性.

Javascript的本机相等运算符不会告诉你很多关于这些字符串之间的关系.在这种特殊情况下,您可以使用正则表达式匹配字符串,但一般情况下只有在您知道期望的差异时才有效.如果输入字符串是随机的,则此方法的一般性会很快崩溃.

方法......我可以想象编写一个算法,将输入字符串拆分为任意数量N的子串,然后将目标字符串与所有这些子字符串进行匹配,并使用匹配量作为相同度的度量.但这感觉就像一个没有吸引力的方法,我甚至不想考虑O将依赖多大N.

在我看来,这种算法中有很多自由参数.例如,字符的区分大小写是否应该对测量的贡献与字符的顺序保存相同/更多/更少,似乎是设计者可以做出的任意选择,即:

identicality("Abxy", "bAxy")identicality("Abxy", "aBxy")

更具体地定义需求...... 第一个例子是我可以使用它的场景.我正在加载一堆字符串(学术论文的标题),我检查我的数据库中是否有它们.但是,源可能包含拼写错误,约定,错误等等的差异,这使匹配变得困难.在这个特定场景中,可能有一种更简单的方法来匹配标题:因为你可以预期可能出现的问题,这可以让你写下一些正则表达式的野兽.

推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有