去除一个重复库

pull/540/head
gedoor 4 years ago
parent 79ddeec20d
commit 74454371ab
  1. 3
      app/build.gradle
  2. 10
      app/src/main/java/io/legado/app/help/BookHelp.kt

@ -192,9 +192,6 @@ dependencies {
//apache //apache
implementation 'org.apache.commons:commons-text:1.9' implementation 'org.apache.commons:commons-text:1.9'
//
implementation 'net.ricecode:string-similarity:1.0.0'
//MarkDown //MarkDown
implementation 'io.noties.markwon:core:4.6.0' implementation 'io.noties.markwon:core:4.6.0'
implementation 'io.noties.markwon:image-glide:4.6.0' implementation 'io.noties.markwon:image-glide:4.6.0'

@ -10,8 +10,7 @@ import io.legado.app.model.analyzeRule.AnalyzeUrl
import io.legado.app.model.localBook.LocalBook import io.legado.app.model.localBook.LocalBook
import io.legado.app.utils.* import io.legado.app.utils.*
import kotlinx.coroutines.delay import kotlinx.coroutines.delay
import net.ricecode.similarity.JaroWinklerStrategy import org.apache.commons.text.similarity.JaccardSimilarity
import net.ricecode.similarity.StringSimilarityServiceImpl
import java.io.File import java.io.File
import java.util.concurrent.CopyOnWriteArraySet import java.util.concurrent.CopyOnWriteArraySet
import java.util.regex.Matcher import java.util.regex.Matcher
@ -216,6 +215,10 @@ object BookHelp {
.trim { it <= ' ' } .trim { it <= ' ' }
} }
private val jaccardSimilarity by lazy {
JaccardSimilarity()
}
/** /**
* 根据目录名获取当前章节 * 根据目录名获取当前章节
*/ */
@ -248,10 +251,9 @@ object BookHelp {
var newIndex = 0 var newIndex = 0
var newNum = 0 var newNum = 0
if (oldName.isNotEmpty()) { if (oldName.isNotEmpty()) {
val service = StringSimilarityServiceImpl(JaroWinklerStrategy())
for (i in min..max) { for (i in min..max) {
val newName = getPureChapterName(newChapterList[i].title) val newName = getPureChapterName(newChapterList[i].title)
val temp = service.score(oldName, newName) val temp = jaccardSimilarity.apply(oldName, newName)
if (temp > nameSim) { if (temp > nameSim) {
nameSim = temp nameSim = temp
newIndex = i newIndex = i

Loading…
Cancel
Save