正则表达式的几个简单验证


正则表达式(regular expression)是一个描述字符模式的对象。ECMAScriptRegExp类表示正则表达式,而StringRegExp都定义了使用正则表达式进行强大的模式匹配和文本检索与替换的函数。


正则表达式主要用来验证客户端的输入数据。用户填写完表单单击按钮之后,表单就会被发送到服务器,在服务器端通常会用PHPASP.NET等服务器脚本对其进行进一步处理。因为客户端验证,可以节约大量的服务器端的系统资源,并且提供更好的用户体验。

//1 检查邮政编码,共六位,数字,第一位不为零
var pattern = /[1-9][0-9]{5}/;//不需要头尾
var str = "224000";
//alert(pattern.test(str));

//检查文件压缩包:文件名字母数字下划线 ,结尾Zip gz rar 7z
var pattern = /^[w]+.(zip|gz|rar)/;  //必须从首行开始匹配,|必须用括号括起来
var str = "213.zip";
//alert(pattern.test(str));

//删除多余空格
var pattern = /s/g;  //开全局
var str = "111 222 333 44";
//alert(str.replace(pattern,''));

//删除收首尾空格
// 1
var pattern = /^s+/;  //匹配前边的空格
var str = "            goo   gle   ";
var result = str.replace(pattern,'');
pattern = /s+$/;    //匹配后面的空格
result = result.replace(pattern,'');
//alert('|'+result+'|');

//2 非贪婪捕获
var pattern = /^s+(.+?)s+$/;    //不使用非贪婪模式,后边的空格会被第二个匹配到
var str = "            goo   gle   ";
var result = pattern.exec(str)[1];
//alert('|'+result+'|');

//3分组模式
var pattern = /^s+(.+?)s+$/;
var str = "            goo   gle   ";
var result = str.replace(pattern,'$1');
//alert('|'+result+'|');

//简单的验证电子邮件
var pattern = /^([w.-]+)@([w-]+).([a-zA-Z]{2,4})$/;
var str = 'yc60.com@gmail.com';
alert(pattern.test(str));