gpt4 book ai didi

java - 优化搜索两个字符串中的关键字

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:26:57 26 4
gpt4 key购买 nike

我有两个字符串,我正在检查它们中的特定常用词。我已经有了语义分数;在这种情况下无关紧要,因为这些词是技术缩写并且有特别强调。他们拥有的常用词集越多,得分越高,越接近。

有很多方法可以解决这个问题。到目前为止,我想到了两个。

1) 我用字符串的单词创建了两个 ArrayList。如果 ArrayList 中都存在,我必须搜索另一组词。如果他们这样做,我给他们+1分。

然后我可以有多个条件,比如

 if((firstString.contains(keyWord)) && (secondString.contains(keyWord)))
then +1
if((firstString.contains(anotherKeyWord)) && (secondString.contains(anotherKeyWord)))
then +1

2> 取两个字符串并使用

进行正则表达式搜索
if firstString.("(.*)someExpression(.*)")) && secondString.("(.*)someExpression(.*)"))
then +1
if firstString.("(.*)someOtherExpression(.*)")) && secondString.("(.*)someOtherExpression(.*)"))
then +1

还有其他更好的方法吗?我现在更倾向于使用正则表达式。这样做看起来非常有效。

基本上,我正在做的是尝试通过使用“ACLS”、“ASHD”、“CXR”(常用医学术语)等缩写词对句子进行分组来对相似的句子进行聚类,因为我知道这些句子主要讨论的是这些问题。然后我得到语义分数来对那些包含这些词的句子进行分组。错误的方法:/?

谢谢你:)

最佳答案

如果只有几个单词需要检查,我会坚持使用 String.contains(),因为它可读且易于实现。

如果要检查的单词很多,字符串搜索算法如Aho-CorasickRabin-Karp会很方便。

关于java - 优化搜索两个字符串中的关键字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23898464/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com