我正在开发一个从纯文本中提取关键字的系统。WordNet 3.0诅咒词
为关键字的要求是:
- 在1 - 45个字母
- 字必须在共发现存在于数据库中
- 不能是“共同”二字
- 切不可一个诅咒字
我已经达到了要求1 - 3,但是我找不到找到区分curs单词;我如何过滤它们?
我知道这不会是一个筛选出所有诅咒词的权威方法,但是会发生什么事情呢是所有关键词在被主持人“批准”之前首先被设置为“未决”状态。但是,如果我可以让WordNet过滤掉大部分的诅咒话,它会让主持人的工作更轻松。
我正在开发一个从纯文本中提取关键字的系统。WordNet 3.0诅咒词
为关键字的要求是:
我已经达到了要求1 - 3,但是我找不到找到区分curs单词;我如何过滤它们?
我知道这不会是一个筛选出所有诅咒词的权威方法,但是会发生什么事情呢是所有关键词在被主持人“批准”之前首先被设置为“未决”状态。但是,如果我可以让WordNet过滤掉大部分的诅咒话,它会让主持人的工作更轻松。
很奇怪,共发现(WN)的Unix命令行版本会给你的选项-domn(域)所需 信息:
wn ass -domnn (-domnv for a verb)
...
>>> USAGE->(noun) obscenity#2, smut#4, vulgarism#1, filth#4, dirty word#1
>>> USAGE->(noun) slang#2, cant#3, jargon#1, lingo#1, argot#1, patois#1, vernacular#1
然而,在NLTK等效方法只返回空单:
from nltk.corpus import wordnet
a = wordnet.synsets('ass')
for s in a:
for l in s.lemmas:
print l.usage_domains()
[]
[]
...
正如你可以尝试筛选在其同义词集的定义“淫亵”,“粗”或“俚语”字样的替代方案。但是,如前所述,对固定列表进行过滤可能更容易(如noswearing.com)。
您也可以尝试[pattern.en.PROFANITY](http://www.clips.ua.ac.be/pages/pattern-en#wordlist) –
从根本上说,你只需要找到的“俗”字来筛选对列表。 –