我想允许 3 个字符 第一个下划线 (_)、第二个连字符 (-) 第三个点 (.)
但我想设置一个条件,即一次只允许使用所有字符中的一个字符,而且只能使用一次。
例如
允许的用户名 = abc.def 、 abc-def 、 abc_def
不允许的用户名= abc.de.f 警告(用户名中只允许有一个特殊字符)
不允许的用户名 = abc.de-f 、 abc.de_f 、 ab-cd_ef
我该怎么办。
最佳答案
尝试 /^[a-z]*[-._]?[a-z]*$/
var tests = ['abc.def', 'abc-def', 'abc_def', 'abc.de.f','abc.de-f' , 'abc.de_f', 'ab-cd_ef'];
$.each(tests, function(a,b) {
$('body').append('<div>' + b + ' = ' + regIt(b) + '</div>');
});
function regIt(str) {
return /^[a-z]*[-._]?[a-z]*$/.test(str);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
关于javascript - 正则表达式 允许的特殊字符中一次只能使用一个特殊字符 Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43325101/