gpt4 book ai didi

ios - Swift Numbers 将文本命名为 Int

转载 作者:行者123 更新时间:2023-11-28 06:10:31 25 4
gpt4 key购买 nike

我刚刚实现了 SFSpeechRecognizer,因为我希望它指示一些数字,但我遇到的问题是,如果我说“一”,result.bestTranscription.formattedString 是“一”,但如果我说“十” ”结果抛出“10”,我如何设法让单个数字由实际数字而不是交响乐“一”表示。

最佳答案

您可以使用 NumberFormatter 将 numberStyle 设置为 .spellOut 并使用其 number(from: String) 将您的字符串转换为数字。如果您需要该数字中的字符串,只需从中初始化一个新字符串即可。确保如果您只想检测英文单词(不区分区域设置)以将格式化程序区域设置为“en_US_POSIX”

let string = "one"
let numberFormatter = NumberFormatter()
numberFormatter.locale = Locale(identifier: "en_US_POSIX") // if you dont set locale it will use current locale so it wont detect one if the language it is not english at the devices locale
numberFormatter.numberStyle = .spellOut
numberFormatter.number(from: string) // 1

测试另一种语言/地区

let string = "um"
let numberFormatter = NumberFormatter()
numberFormatter.locale = Locale(identifier: "pt_BR")
numberFormatter.numberStyle = .spellOut
numberFormatter.number(from: string) // 1

关于ios - Swift Numbers 将文本命名为 Int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46856297/

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