在我们的注册表单中,我们现在想要求用户输入他们的 Twitter 用户名(例如 @paul)。
有人能告诉我们允许使用哪些字符吗?
例如 a-z、A-Z、下划线、0-9
还有其他的吗?
有人能告诉我们允许使用哪些字符吗?
例如 a-z、A-Z、下划线、0-9
还有其他的吗?
我认为用户名只能包含字母、数字和下划线,且最多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}$/
function validTwitteUser(sn) {
return /^[a-zA-Z0-9_]{1,15}$/.test(sn);
}
/^[a-zA-Z0-9_]{4,15}$/
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。