优化
This commit is contained in:
@@ -421,11 +421,11 @@ class TextFile(private var book: Book) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取所有匹配次数大于1的目录规则
|
* 获取合适的目录规则
|
||||||
*/
|
*/
|
||||||
private fun getTocRule(content: String): Pattern? {
|
private fun getTocRule(content: String): Pattern? {
|
||||||
val rules = getTocRules().reversed()
|
val rules = getTocRules().reversed()
|
||||||
var maxCs = 1
|
var maxNum = 1
|
||||||
var tocPattern: Pattern? = null
|
var tocPattern: Pattern? = null
|
||||||
for (tocRule in rules) {
|
for (tocRule in rules) {
|
||||||
val pattern = try {
|
val pattern = try {
|
||||||
@@ -435,12 +435,16 @@ class TextFile(private var book: Book) {
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
val matcher = pattern.matcher(content)
|
val matcher = pattern.matcher(content)
|
||||||
var cs = 0
|
var start = 0
|
||||||
|
var num = 0
|
||||||
while (matcher.find()) {
|
while (matcher.find()) {
|
||||||
cs++
|
if (start == 0 || matcher.start() - start > 1000) {
|
||||||
|
num++
|
||||||
|
start = matcher.end()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (cs >= maxCs) {
|
if (num >= maxNum) {
|
||||||
maxCs = cs
|
maxNum = num
|
||||||
tocPattern = pattern
|
tocPattern = pattern
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user