用户名验证:
2-20个字符(包括字母、数字、下划线) ----- \w{2,20}^[@|?|!]
(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
var reg=new RegExp("[a-zA-Z]+[a-zA-Z0-9_]{4,15}[^@|?|&|#]");
密码验证:
密码由6-16个字符组成,请使用英文字母加数字或符号的组合密码 :^\w{6,16}
中国电话号码验证
匹配形式如:0511-4405222 或者021-87888822 或者 021-44055520-555 或者 (0511)4405222
正则表达式 (\(\d{3,4}\)|\d{3,4}-|\s)?\d{7}
Js:var reg=new RegExp("(\\(\\d{3,4}\\)|\\d{3,4}-|\\s)?\\d{7}");
匹配国内电话号码:(\d{3}-|\d{4}-)?(\d{8}|\d{7})?
评注:匹配形式如 0511-4405222 或 021-87888822
电子邮件验证
匹配形式如:justali@justdn.com
正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*.w+([-.]\w+)*
身份证验证
匹配形式如:15位或者18位身份证
正则表达式 [1-9]([0-9]{14} ¦[0-9]{17})$
var reg=new RegExp("\\d{18}|\\d{15}")
手机验证:如15874271719
^[1][0-9]{10}$
var reg=new RegExp("^[1][0-9]{10}$")
匹配腾讯QQ号:[1-9]+[0-9]{4,7}$
评注:腾讯QQ号从10000开始
匹配中国邮政编码:[1-9]{1}(\d+){5}
评注:中国邮政编码为6位数字
匹配ip地址:\d+\.\d+\.\d+\.\d+
评注:提取ip地址时有用
常用数字验证
正则表达式
"d{n}" n为规定长度
"d{n,m}" n到m的长度范围
非法字符验证
匹配非法字符如:< > & / ' |
正则表达式 [^<|>|&|/|'\]+
日期验证
匹配形式如:20030718,030718
范围:1900--2099
正则表达式((((19){1}|(20){1})d{2})|d{2})[01]{1}d{1}[0-3]{1}d{1}
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)
匹配空白行的正则表达式:\n\s*\r
评注:可以用来删除空白行
匹配首尾空白字符的正则表达式:^\s*|\s*$
评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式
匹配HTML标记的正则表达式:< (\S*?)[^>]*>.*?|< .*? />
评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力
匹配网址URL的正则表达式:http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?
提取信息中的整数:
\d+
提取信息中的浮点数(即小数):
(-?\d*)\.?\d+
提取信息中的任何数字 :
(-?\d*)(\.\d+)?
提取信息中的双字节字符串 (汉字):
[^\x00-\xff]*
提取信息中的英文字符串:
\w*
提取信息中的网络链接:
(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
提取信息中的图片链接:
(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
匹配特定数字:
^[1-9]\d*$ //匹配正整数
^-[1-9]\d*$ //匹配负整数
^-?[1-9]\d*|0$ //匹配整数
^[1-9]\d*|0$ //匹配非负整数(正整数 + 0)
^-[1-9]\d*|0$ //匹配非正整数(负整数 + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$ //匹配正浮点数
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ //匹配负浮点数
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$ //匹配浮点数
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$ //匹配非负浮点数(正浮点数 + 0)
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$ //匹配非正浮点数(负浮点数 + 0)
^\w+$ //匹配由数字、26个英文字母或者下划线组成的字符串
匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z]+[a-zA-Z0-9_]{4,15}$
年-月-日:/^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/
月/日/年:/^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/
日期 2006-12-4 YYYY/MM/DD YYYY_MM_DD YYYY.MM.DD
/((^((1[8-9]\d{2})|([2-9]\d{3}))([-\/\._])(10|12|0?[13578])([-\/\._])(3[01]|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))([-\/\._])(11|0?[469])([-\/\._])(30|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))([-\/\._])(0?2)([-\/\._])(2[0-8]|1[0-9]|0?[1-9])$)|(^([2468][048]00)([-\/\._])(0?2)([-\/\._])(29)$)|(^([3579][26]00)([-\/\._])(0?2)([-\/\._])(29)$)|(^([1][89][0][48])([-\/\._])(0?2)([-\/\._])(29)$)|(^([2-9][0-9][0][48])([-\/\._])(0?2)([-\/\._])(29)$)|(^([1][89][2468][048])([-\/\._])(0?2)([-\/\._])(29)$)|(^([2-9][0-9][2468][048])([-\/\._])(0?2)([-\/\._])(29)$)|(^([1][89][13579][26])([-\/\._])(0?2)([-\/\._])(29)$)|(^([2-9][0-9][13579][26])([-\/\._])(0?2)([-\/\._])(29)$))/
【使用:】在js的使用。产生有关表达式语句。
var userName=document.getElementById("userName");//获取用户名的值
var regex=new RegExp("\\w{2,20}[^@|?|!]");
var match3=userName.value.match(num);
else if(match3==null)
{
alert("填写不合法,只能匹配正整数");
return false;
}
Js中的表达式。
匹配中文: var regex=new RegExp("^[\u4E00-\u9FA5]+$");
正整数 var num=new RegExp("^[1-9]\\d*$")
正浮点数: var regex=new RegExp("^[1-9]\\d*\\.\\d*|0\\.\\d*[1-9]\\d*$");
下表是元字符及其在正则表达式上下文中的行为的一个完整列表:
\ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个后向引用、或一个八进制转义符。
^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的Multiline 属性,^ 也匹配 ’\n’ 或 ’\r’ 之后的位置。
$ 匹配输入字符串的结束位置。如果设置了 RegExp 对象的Multiline 属性,$ 也匹配 ’\n’ 或 ’\r’ 之前的位置。
* 匹配前面的子表达式零次或多次。
+ 匹配前面的子表达式一次或多次。+ 等价于 {1,}。
? 匹配前面的子表达式零次或一次。? 等价于 {0,1}。
{n} n 是一个非负整数,匹配确定的n 次。
{n,} n 是一个非负整数,至少匹配n 次。
{n,m} m 和 n 均为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次。在逗号和两个数之间不能有空格。
? 当该字符紧跟在任何一个其他限制符 (*, +, ?, {n}, {n,}, {n,m}) 后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。
. 匹配除 "\n" 之外的任何单个字符。要匹配包括 ’\n’ 在内的任何字符,请使用象 ’[.\n]’ 的模式。
(pattern) 匹配pattern 并获取这一匹配。
(?:pattern) 匹配pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。
(?=pattern) 正向预查,在任何匹配 pattern 的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。
(?!pattern) 负向预查,与(?=pattern)作用相反
x|y 匹配 x 或 y。
[xyz] 字符集合。
[^xyz] 负值字符集合。
[a-z] 字符范围,匹配指定范围内的任意字符。
[^a-z] 负值字符范围,匹配任何不在指定范围内的任意字符。
\b 匹配一个单词边界,也就是指单词和空格间的位置。
\B 匹配非单词边界。
\cx 匹配由x指明的控制字符。
\d 匹配一个数字字符。等价于 [0-9]。
\D 匹配一个非数字字符。等价于 [^0-9]。
\f 匹配一个换页符。等价于 \x0c 和 \cL。
\n 匹配一个换行符。等价于 \x0a 和 \cJ。
\r 匹配一个回车符。等价于 \x0d 和 \cM。
\s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于[ \f\n\r\t\v]。
\S 匹配任何非空白字符。等价于 [^ \f\n\r\t\v]。
\t 匹配一个制表符。等价于 \x09 和 \cI。
\v 匹配一个垂直制表符。等价于 \x0b 和 \cK。
\w 匹配包括下划线的任何单词字符。等价于’[A-Za-z0-9_]’。
\W 匹配任何非单词字符。等价于 ’[^A-Za-z0-9_]’。
\xn 匹配 n,其中 n 为十六进制转义值。十六进制转义值必须为确定的两个数字长。
\num 匹配 num,其中num是一个正整数。对所获取的匹配的引用。
\n 标识一个八进制转义值或一个后向引用。如果 \n 之前至少 n 个获取的子表达式,则 n 为后向引用。否则,如果 n 为八进制数字 (0-7),则 n 为一个八进制转义值。
\nm 标识一个八进制转义值或一个后向引用。如果 \nm 之前至少有is preceded by at least nm 个获取得子表达式,则 nm 为后向引用。如果 \nm 之前至少有 n 个获取,则 n 为一个后跟文字 m 的后向引用。如果前面的条件都不满足,若 n 和 m 均为八进制数字 (0-7),则 \nm 将匹配八进制转义值 nm。
\nml 如果 n 为八进制数字 (0-3),且 m 和 l 均为八进制数字 (0-7),则匹配八
分享到:
相关推荐
### 常见的注册表单验证 在网站或应用开发过程中,为了确保用户输入的信息准确无误,通常会采用各种表单验证方法。本文将详细介绍一些常见的注册表单验证方式,帮助开发者更好地理解并应用这些技术。 #### 表单...
在现代电子商务网站中,用户注册的安全性至关重要,短信验证就是一种常见的增强安全性的手段。"Ecshop注册短信验证"指的是在用户注册Ecshop账号时,通过发送验证码到用户手机进行身份验证的过程,以确保注册信息的...
本文将详细探讨“注册时短信验证”的实现过程,重点涉及Java Web开发和秒滴云公司的短信接口服务。 首先,短信验证的核心是通过发送一条包含随机生成验证码的短信到用户手机上,用户收到后在指定时间内输入到应用中...
在IT领域,尤其是在Web开发中,用户注册是网站或应用程序必不可少的部分。为了确保用户数据的安全性和有效性,开发者通常会采用表单验证技术。本案例中,“jQuery用户注册表单验证页面代码.zip”是一个包含实现这一...
【注册邮箱激活验证Demo】是一个基于JSP/Servlet和JavaMail技术的应用实例,主要用于网站用户注册时的邮箱验证。在互联网应用中,邮箱验证是一种常见的安全机制,它确保用户提供的邮箱地址有效,并防止恶意注册。当...
"login form验证"部分涉及了表单验证的常见策略,例如非空检查、长度限制、字符格式校验等。这些验证通常通过JavaScript事件监听器(如onsubmit、onchange)触发,以确保用户输入的数据符合要求。 另外,"后台"可能...
在JavaScript(简称js)编程...通过合理的规则设定和事件监听,我们可以构建一个基本的用户注册表单验证系统,提升网站的安全性和用户体验。在实际的"pc注册验证"项目中,我们可以根据具体需求调整和扩展这些验证规则。
用户注册验证是网站安全的基础,它可以防止无效数据的提交,保护系统免受恶意攻击,如SQL注入,同时也能提升用户体验,避免因输入错误导致的提交失败。 三、JQuery验证实现步骤 1. **获取表单元素**:使用JQuery的...
本示例聚焦于使用jQuery实现的带步骤网站注册表单填写验证代码,这是一种常见的前端验证技术。jQuery,作为一款强大的JavaScript库,简化了DOM操作,使得动态交互变得更加便捷。 首先,我们要理解表单验证的基本...
在IT行业中,网络验证是一项关键的技术,特别是在开发网络应用程序时。C++作为一款强大的系统级编程语言,常常被用于构建高效、安全的网络服务。在这个主题下,我们将深入探讨C++实现网络验证的相关知识点。 首先,...
在C#编程中,电子邮件验证是一种常见的用户注册过程,用于确保用户提供的邮箱地址有效并真正属于他们。这个DEMO展示了如何使用C#语言通过发送激活邮件来验证注册用户的账号。以下是一些关于C#发送邮件验证的重要知识...
在IT行业中,前端开发是至关重要的一环,而用户界面中的登录和注册功能是任何网站或应用的基础组件。在这个"登录注册验证jq"项目中,我们主要关注的是使用jQuery库进行表单验证,这是一种广泛使用的JavaScript库,极...
在进行邮箱注册验证时,SMTP扮演着至关重要的角色,因为大多数注册过程都要求用户通过电子邮件来确认他们的账户。下面将详细讨论SMTP在邮箱注册验证中的应用及其相关知识点。 1. SMTP工作原理: SMTP使用TCP/IP...
短信验证和二维码注册页面是现代Web应用中常见的用户注册方式,尤其在安全性要求较高的场景下。这个"短信验证和二维码注册页面模板.rar"文件包含了实现此类功能的基本元素,包括HTML、CSS和JavaScript代码。下面我们...
常见的前端验证库有jQuery Validate,后端框架如Spring Boot提供了便捷的验证API。 在安全方面,以下几点至关重要: - **防止SQL注入**:使用预编译语句或参数化查询,避免恶意用户通过输入恶意代码获取敏感信息。...
在IT领域,网络验证是一种常见的安全机制,用于确保用户或设备的合法性,防止未经授权的访问和使用。"E语言网络验证"是利用E语言(可能指的是Erlang或一种特定的编程方言)开发的一种验证方案,它具有独特的特性,即...
在IT行业中,用户注册安全是网站或应用设计的重要一环,而"注册后自动发送邮件,通过链接进行验证"是一种常见的验证用户身份的方法。这种方法被称为邮箱验证或邮件确认,其目的是确保用户提供的电子邮件地址有效,...
"jQuery高级注册表单验证"是这样一种解决方案,它利用JavaScript库jQuery的强大功能,提供三种不同风格的表单验证方式,覆盖了常见的验证规则,如字符串、数字、日期以及电子邮件的验证。 首先,我们来详细了解一下...
综上所述,"新注册会员Email验证"是ASP.NET应用中的常见功能,涉及到邮件服务、数据库操作、URL路由等多个方面,对系统的安全性和用户体验都有重要影响。通过熟练掌握这些技术,开发者可以为用户提供更加安全和便捷...
在IT行业中,用户登录和注册验证是任何网络应用的基础安全机制。这个过程确保了只有合法的用户能够访问受保护的数据和服务。在这个特定的场景中,我们关注的是登录验证,特别是用Java实现的这一部分。 首先,我们要...