参考:
比较准确完整的中文字符正则校验-demonbug-cnblogs
1 只允许数字字母空格和英文字符
var reg_ssid = /^[a-zA-Z0-9 ~!@#$%^&*()_+`\\\-\=<>?,:;\/'".|[\]{}]*$/
function check(value) {
// /[\u4e00-\u9fa5]/
if (!reg_ssid.test(value)) {
$("#err").html("错误")
} else {
$("#err").html("正确")
}
}
说明:
-
\w
:数字字母下划线 - 要转义
-
\\
:匹配\
字符 -
\/
:匹配/
-
\]
:匹配]
,[]
中括号会被当做匹配里面的字符,用转义把]
分开
-
2 数字字母数字,至少两种,6-12位
25+正则面试题详尽解析,让你轻松通过正则面试,让你少写2000行代码-juejin-前端胖头鱼
- 密码长度是6-12位
- 由数字、小写字符和大写字母组成
- 必须至少包括2种字符
let reg = /(((?=.*\d)((?=.*[a-z])|(?=.*[A-Z])))|(?=.*[a-z])(?=.*[A-Z]))^[a-zA-Z\d]{6,12}$/
3 数字大小写特殊字符包含3种,不含空格
<body>
<div class="mydiv">
<input id="myinput" type="text" onkeyup="check(this.value);">
<div id="err" style="background-color: #ccc; min-height: 30px;"></div>
</div>
</body>
<script>
/*
数字 小写 特殊
数字 大写 特殊
大 小写 数字
大 小写 特殊
*/
let reg1 = /(?=.*\d)(?=.*[~!@#$%^&*()_+`\-\=<>?,:;\/'".\\\|[\]{}])((?=.*[a-z])|(?=.*[A-Z]))/
let reg2 = /(?=.*[a-z])(?=.*[A-Z])((?=.*\d)|(?=.*[~!@#$%^&*()_+`\-\=<>?,:;\/'".\\\|[\]{}]))/
let reg3 = /\s+/g
function check(value) {
if ((reg1.test(value) || reg2.test(value)) && !reg3.test(value)) {
document.getElementById("err").innerHTML= "正确";
} else {
document.getElementById("err").innerHTML= "错误";
}
}
</script>
综合
//需要引入jquery.js
<body>
<div class="mydiv">
<input id="myinput" type="text" onkeyup="check(this.value);">
<div id="err" style="background-color: #ccc; min-height: 30px; width: 400px;">默认</div>
</div>
</body>
<script>
/**
* 设置2.4G和5G的ssid为"☜☝☞■"不行
* 【预期结果】
支持的字符为:
1.字母大小写
2.空格
3.特殊字符 ~!@#$%^&*()_+`-=<>.?,:;|[]{}
4.中文,支持中文特殊字符
5.支持表情
* */
var regexunicode = /^[\u0000-\uFFFF]{1,}$/;//只校验unicode
var regexfullword = /^[\u2000-\u206f\u3000-\u303f\u4e00-\u9fef\uff00-\uffef]*$/; //中文包括中文字符校验
// var regexfullword = /^[\u4e00-\u9fa5]*$/; //中文校验
var regSpecial = /^[a-zA-Z0-9 ~!@#$%^&*()_+`\[\]\-\=<>?,:;\/'".|\\{}]*$/;//数字字母下划线
// var regexwhitespace=/\s+/g;
var regexEmoji = /[\u0020-\u007E\u00A0-\u00BE\u2E80-\uA4CF\uF900-\uFAFF\uFE30-\uFE4F\uFF00-\uFFEF\u0080-\u009F\u2000-\u201f\u2026\u2022\u20ac\r\n]/; //表情校验
var regAll = /(?=.*[\x00-\xFFa-zA-Z0-9 ~!@#$%^&*()_+`\[\]\-\=<>?,:;\/'".|\\{}])|(?=.*[^\u0020-\u007E\u00A0-\u00BE\u2E80-\uA4CF\uF900-\uFAFF\uFE30-\uFE4F\uFF00-\uFFEF\u0080-\u009F\u2000-\u201f\u2026\u2022\u20ac\r\n])/;
function check(value) {
if (regexunicode.test(value)) {
if (regexfullword.test(value)) {
$("#err").html("正确")
$("#err").css("background-color", "green")
} else {
$("#err").html("错误")
$("#err").css("background-color", "pink")
}
} else {
$("#err").html("错误")
$("#err").css("background-color", "pink")
}
}
</script>
网友评论