Java正则表达式 - 从字符串中提取hashtags

5
需要在Java中从源字符串中提取出哈希标签字符串。有什么想法/示例吗?
谢谢, Sri
1个回答

9

以下是我使用的代码(它不仅处理ASCII标签还能处理UTF-8标签):

private static final Pattern TAG_PATTERN = 
   Pattern.compile("(?:^|\\s|[\\p{Punct}&&[^/]])(#[\\p{L}0-9-_]+)");

顺便说一下,你应该可以从推文实体中获取标签(include_entities=true


谢谢,我正在使用Twitter搜索API(JSON)。在这里include_entities会起作用吗? - Sri
@Srirangan 我不知道,查阅文档吧。 - Bozho
我想知道Twitter是否像你这里一样使用字母属性(Unicode通用类别),还是它使用包括各种变音符号和罗马数字等的派生属性——字母属性。 - tchrist
@tchrist 推特不支持除拉丁文以外的脚本中的标签。因此,我认为他们不使用\p{L} - Bozho
谢谢,我该如何获取没有空格的标签,就像Instagram的标签(#app#test)一样,你能帮我吗? - Ahmad Ronagh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接