正则表达式
参考:
比较准确完整的中文字符正则校验-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>
(?=a)
记一次面试题,正则表达式(?=a)是什么意思? - 掘金-Maya本尊
https://juejin.cn/post/6844903855243657230
匹配key:value
"[\s\S]*"[\s]*:[\s]*"[\s\S]*",\n
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具