我希望将Twitter语法与正则表达式相匹配。
我如何匹配"@______"
的任何内容,即以@符号开头,后跟没有空格,只是字母和数字,直到单词的结尾? (对于推特,我想在回复中匹配某人的姓名)
答案 0 :(得分:6)
转到
/@(\w+)/
也可以提取匹配的名称。
答案 1 :(得分:5)
@\w+
那很简单?
答案 2 :(得分:2)
应该注意的是,Twitter不再允许超过15个字符的用户名,因此您也可以匹配:
@\w{1,15}
显然有一些人的用户名长度超过15个字符,但如果你想排除可能的误报,那么15岁的测试会更好。
显然没有关于下划线是否可以用于用户名的开头或结尾,多个下划线等的规则,并且存在具有单字母名称的帐户,以及具有用户名“_”的人。 / p>
答案 3 :(得分:0)
@[\d\w]+
\ d表示数字字符
\ w为单词字符
[]表示字符类
+表示字符类的多个实例
请注意,字和数字字符的这些说明符与语言有关。检查语言规范以确定。
答案 4 :(得分:0)
有一个非常广泛的API,用于获取有效的推特名称,提及等。由Twitter提供的API的Java版本可以在github twitter-text-java上找到。你可能想看看它是否可以使用。
我用它来验证推特名称,效果非常好。