JavaScript-JS 效验昵称的方法

JavaScript-JS 效验昵称的方法

清晨说ぺ晚安 发布于 2017-05-18 字数 183 浏览 1068 回复 3

大家大部分都接触过做类似注册之类的东东,对于输入的昵称的效验,包括特殊情况的需求比如过滤指定的某些过滤词什么的东东,同志们列举一下你们成功用过的方法、正则、类等等,有实例更好!

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

泛泛之交 2017-09-02 3 楼

我们平台有用到的一个检验

String.prototype.trim = function()
{
return this.replace(/(^[s]*)|([s]*$)/g, '');
}
String.prototype.isNickName = function()
{
var vStr = this.trim();
var vReg = /^([u4E00-u9FA5]|[uFE30-uFFA0]|[w])+$/;

if (vStr.strLength() < 6 || vStr.strLength() > 25)
{
return false;
} else {
return vReg.test(vStr);
}
}

瑾兮 2017-07-12 2 楼

function NickCheck(input)
{
var re;
re = new RegExp("[\(\)\*\+\-\[\]\?\\\^\{\}\|'\"#&%]");
var unLen = input.value.replace(/[^x00-xff]/g, "**").length;
if(unLen < 3) {ShowNotes(input,'_invalid',false);NickStatus = false;}
else if(re.test(input.value)){ShowNotes(input,'_invalid2',false);NickStatus = false;}
//此处要添加信箱的AJAX判断
else {
LoadNick(encodeURIComponent(input.value));
}
return NickStatus;
}

上面代码是之前我弄过的检测昵称方法,其中LoadNick函数用来ajax过滤昵称的合法性的!

泛泛之交 2017-07-10 1 楼

检验昵称一般是检查是否为空,然后前端进行格式性验证(如:不能包含星号、#号什么的),至于你说的过滤词这个一般很少会放在前端验证,我以前是后台有一个禁注册词的一个数据表有存放这些词,然后在后端进行验证,也方便后台添加这些禁词。下面有几个验证格式的方法,可供参考。

//校验是否全由数字组成
function isDigit(s)
{
var patrn=/^[0-9]{1,20}$/;
if (!patrn.exec(s)) return false
return true
}

//校验登录名:只能输入5-20个以字母开头、可带数字、“_”、“.”的字串

function isNickName(s)

{

var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/;

if (!patrn.exec(s)) return false
return true
}

//校验用户姓名:只能输入1-30个以字母开头的字串
function isTrueName(s)

{

var patrn=/^[a-zA-Z]{1,30}$/;

if (!patrn.exec(s)) return false
return true
}

}}