使用 Perl 提取单词
我喜欢从文本中提取单词。我写了简单的正则表达式。
my $regex = qr[\W];
while(<DATA>){
push @words, split $regex;
}
我喜欢修改它以包含专有名称。专有名称可以组合多个“单词”。例如..
@names = ('John Smith', 'Joe Smith');
I like to extract the words from the text. I have written the simple regex.
my $regex = qr[\W];
while(<DATA>){
push @words, split $regex;
}
I like to modify it to include proper names. Proper names may combine multiple 'words'. For example..
@names = ('John Smith', 'Joe Smith');
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我认为没有明确的解决方案。正则表达式仅限于复杂的文本空间,例如网页或具有许多异常的书籍,例如书名呢?考虑使用 1) 自然语言处理或 2) 索引方法,您可以识别两个单词,以大写字母开头,用一个空格分隔,并查看其中一个单词是否包含在已知名字或姓氏的索引中。祝你好运。
I don't think there is a definitive solution. The regular expression is limited in a complex text space like a web page or book with many anomalies, e.g. what about book titles? Look at using either 1) natural language processing or 2) An index approach where you identify two words, starting with capital letter, split by one space, and see if one of them is contained with an index of known first or last names. good luck.
也许:
Perhaps: