拼写空缺支持全空,随机空缺数量
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -71,8 +71,7 @@ enum QuizGenerator {
|
|||||||
let chars = Array(word)
|
let chars = Array(word)
|
||||||
let letterPositions = chars.indices.filter { chars[$0].isLetter }
|
let letterPositions = chars.indices.filter { chars[$0].isLetter }
|
||||||
guard !letterPositions.isEmpty else { return word }
|
guard !letterPositions.isEmpty else { return word }
|
||||||
let maxBlanks = letterPositions.count - 1
|
let blankCount = Int.random(in: 1...letterPositions.count)
|
||||||
let blankCount = maxBlanks > 0 ? Int.random(in: 1...maxBlanks) : 0
|
|
||||||
let indices = Set(letterPositions.shuffled().prefix(blankCount))
|
let indices = Set(letterPositions.shuffled().prefix(blankCount))
|
||||||
return chars.enumerated().map { indices.contains($0.offset) ? "_" : String($0.element) }.joined()
|
return chars.enumerated().map { indices.contains($0.offset) ? "_" : String($0.element) }.joined()
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user