Twitter名称验证

时间:2012-07-06 11:07:46

标签: regex twitter

在我们的注册表格中,我们现在要求用户输入他们的推特名称(例如@paul)。

有谁可以告诉其中允许使用哪些字符?

e.g。 a-z,A-Z,下划线,0-9

其他什么?

4 个答案:

答案 0 :(得分:12)

相信它只是字母,数字和下划线,最多15个字符。

快速搜索公布了这篇文章(非Twitter),内容涵盖同一主题:

http://kagan.mactane.org/blog/2009/09/22/what-characters-are-allowed-in-twitter-usernames/

以上帖子还包含正则表达式示例,可帮助您验证:

Full regex – /^[a-zA-Z0-9_]{1,15}$/
Perl-compatible regex – /^\w{1,15}$/

答案 1 :(得分:3)

从Twitter查看此页面以获取官方指南/规则

http://support.twitter.com/articles/101299-why-can-t-i-register-certain-usernames#

答案 2 :(得分:2)

这是最终的JavaScript函数:

function validTwitteUser(sn) {
    return /^[a-zA-Z0-9_]{1,15}$/.test(sn);
}

答案 3 :(得分:1)

对于JavaScript / TypeScript:

首先,

npm i twitter-text
# or
yarn add twitter-text

然后

import { isValidUsername } from 'twitter-text'

console.log(isValidUsername('@helloworld')) // true

还有其他实现(Java,Ruby,ObjC),请查看https://github.com/twitter/twitter-text


注意:捆绑包的大小太大,仅用于字符串验证...