gpt4 book ai didi

iphone - iOS iPhone如何按使用频率列出UTextView中的所有关键字?

转载 作者:行者123 更新时间:2023-12-01 18:29:49 24 4
gpt4 key购买 nike

我得到了带有任意长度文本(最多10000个字符)的UITextView。我需要解析此文本,提取所有关键字并按使用频率列出它们,最常用的单词在顶部,下一个向下,依此类推。操作完成后,我很可能会显示模式UITableView。

我在考虑一种有效的有用的方法。我可以尝试使用分隔符以[空白,标点符号等]形式分隔字符串。
这使我得到了一系列字符序列。
我可以将每个添加序列添加为NSMutableDictionary键,一旦看到该单词的另一个实例,就可以增加其计数。但是,这可能会产生300-400个单词的列表,大多数单词的频率为1。

是否有实现我所描述的逻辑的好方法?我应该尝试按字母顺序对数组进行排序并尝试某种“模糊”逻辑匹配吗? 是否有任何NSDataDetector或NSString方法可以为我完成这种工作?

另一个问题是:如何提取诸如“at”,“to”,“to”,“for”等内容,而不将其列出在我的关键字列表中?

如果我可以看一下已经完成此任务的示例项目,那就太好了。

谢谢!

最佳答案

您可以使用 CFStringTokenizer 来获取单词边界。为了进行计数,您可以按照您的建议使用NSMutableDictionaryNSCountedSet,这可能会更有效。

如果您对频率为1(或其他阈值)的单词不感兴趣,则必须在对所有单词计数后将其过滤掉。

要忽略某些单词(a,the,for ...),您需要一个特定于文本语言的单词列表。 Wikipedia article on stop words包含几个链接,例如this CSV file

关于iphone - iOS iPhone如何按使用频率列出UTextView中的所有关键字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10268658/

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