【发布时间】:2018-02-22 01:51:42
【问题描述】:
所以我目前正在做一个项目,我们需要按单词解析句子(更具体地说是推文)并将单词的频率和单词本身存储在向量对中(使用自定义查找函数来增加频率)。
我目前正在使用 strtok 来解析句子,我想知道您是否可以忽略开头带有符号 @ 的任何单词。我目前将 strtok 函数的分隔符作为一堆无用的符号和空格!@#&()–[{}]:;',?/*\".+\\^ 并正确忽略它们,但说我有一个词:@thisismyusername,有没有办法忽略整个词,包括'thisismyusername' 而不仅仅是@?
我一直在寻找类似这样的文档,但还没有找到任何东西。
这是我的 strtok 解析代码:
char* tempMap;
tempMap = strtok (tempHolderPos," !@#&()–[{}]:;',?/*\".+\\^");
*tempHolderPos是完整的句子。
谢谢大家!
【问题讨论】:
-
我认为分割空格和分割的任何第一个字符不是字母更容易,不要隐藏它。
-
strtok是一个很原始的函数,更复杂的解析看regex