正则表达式

由数字、26个英文字母或者下划线组成的字符串

^[0-9a-zA-Z_]{1,}$ 或 ^/w+$

由26个英文字母组成的字符串

^[A-Za-z]+$

只能输入数字

^[0-9]*$

只能输入n位数字

^/d{n}$

只能输入至少n位数字

^/d{n,}$

只能输入m-n位数字

^/d{m,n}$

m到n个汉字

@“^[\u4E00-\u9FA5]{m,n}$”

只含有汉字、数字、字母、下划线

^[a-zA-Z0-9_\u4e00-\u9fa5]+$

只含有汉字、数字、字母、下划线,不能以下划线开头和结尾

^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$

非负整数

^/d+$

正整数

^[0-9]*[1-9][0-9]*$

整数

^-?/d+$

非负浮点数

^/d+(/./d+)?$

email地址

^[/w-]+(/.[/w-]+)*@[/w-]+(.[/w-]+)+$

 

解释:

\w  查找单词字符

\W  查找非单词字符

\d  查找数字

\D  查找非数字字符

\s  查找空白字符

\S  查找非空白字符

描述字符范围

[abc]  匹配任一字符

[^abc]  匹配任一不在范围内的字符

[0-9]、[a-z]、[A-Z]、[A-z]所有字母

选择匹配  |

如匹配任意数字或字母:var r = /\w+|\d+/;

重复匹配

n+  匹配任何包含至少一个n的字符串

n*  匹配包含0个或多个n的字符串

n?  匹配包含0个或1个n的字符串

n{x}  匹配包含x个n的字符串

n{x,y}  匹配x到y个

n{x,}  匹配至少x个

边界量词

^  匹配开头

$  匹配结尾

 

注册信息验证

//用户名正则,4到16位(字母,数字,下划线,减号)  
var uPattern = /^[a-zA-Z0-9_-]{4,16}$/;  
//输出 true  
console.log(uPattern.test("iFat3")); 
//密码强度正则,最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符  
var pPattern = /^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/;  
//输出 true  
console.log("=="+pPattern.test("iFat3#")); 

 这里注意:

用法 说明 返回值
pattern.test(str)   判断str是否包含匹配结果 包含返回true,不包含返回false。
pattern.exec(str)   根据pattern对str进行正则匹配 返回匹配结果数组,如匹配不到返回null
str.match(pattern)   根据pattern对str进行正则匹配 返回匹配结果数组,如匹配不到返回null
str.replace(pattern, replacement)   根据pattern进行正则匹配,把匹配结果替换为replacement 一个新的字符串

 //密码至少6位,包含非负整数
          var pwd_pattern = /^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z]).*$/
 // 账号需要首字母开头、只包含字母数字、长度5-20
            var pattren = /^[a-zA-Z]{1}([a-zA-Z0-9]){4,19}$/;
posted @   宅马花子  阅读(34)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示