转自http://zhangyanyansy.blog.163.com/blog/static/135305097201042110756638/
javascript正则表达式,jquery正则
一、javascript正则表达式的基本知识
1 javascript 正则对象创建 和用法声明javascript 正则表达式
var reCat = new RegExp(“cat”);
你也可以
var reCat = /cat/; //Perl 风格 (推荐)
2 学习最常用的 test exec match search replace split 6个方法
1) test 检查指定的字符串是否存在
var data = “123123″;
var reCat = /123/gi;
alert(reCat.test(data)); //tr
//检查字符是否存在 g 继续往下走 i 不区分大小写
2) exec 返回查询值
var data = “123123,213,12312,312,3,Cat,cat,dsfsdfs,”;
var reCat = /cat/i;
alert(reCat.exec(data)); //Cat
3)match 得到查询数组
var data = “123123,213,12312,312,3,Cat,cat,dsfsdfs,”;
var reCat = /cat/gi;
var arrMactches = data.match(reCat)
for (var i=0;i < arrMactches.length ; i++)
{
alert(arrMactches[i]); //Cat cat
}
4) search 返回搜索位置 类似于indexof
var data = “123123,213,12312,312,3,Cat,cat,dsfsdfs,”;
var reCat = /cat/gi;
alert(data.search(reCat)); //23
5) replace 替换字符 利用正则替换
var data = “123123,213,12312,312,3,Cat,cat,dsfsdfs,”;
var reCat = /cat/gi;
alert(data.replace(reCat,”libinqq”));
6)split 利用正则分割数组
var data = “123123,213,12312,312,3,Cat,cat,dsfsdfs,”;
var reCat = /\,/;
var arrdata = data.split(reCat);
for (var i = 0; i < arrdata.length; i++)
{
alert(arrdata[i]);
}
3 学习下 简单类 负向类 范围类 组合类
//简单类
var data = “1libinqq,2libinqq,3libinqq,4libinqq”;
var reCat = /[123]libinqq/gi;
var arrdata = data.match(reCat);
for (var i = 0; i < arrdata.length; i++)
{
alert(arrdata[i]); // 1libinqq 2libinqq 3libinqq
}
//负向类
var data = “alibinqq,1libinqq,2libinqq,3libinqq,4libinqq”; //\拏
var reCat = /[^a123]libinqq/gi;
var arrdata = data.match(reCat);
for (var i = 0; i < arrdata.length; i++)
{
alert(arrdata[i]); //4libinqq
}
//范围类
var data = “libinqq1,libinqq2,libinqq3,libinqq4,libinqq5″; //\拏
var reCat = /libinqq[2-3]/gi;
var arrdata = data.match(reCat);
for (var i = 0; i < arrdata.length; i++)
{
alert(arrdata[i]); // libinqq2 libinqq3
}
//组合类
var data = “a,b,c,w,1,2,3,5″; //\拏
var reCat = /[a-q1-4\n]/gi;
var arrdata = data.match(reCat);
for (var i = 0; i < arrdata.length; i++)
{
alert(arrdata[i]); // a b c 1 2 3
}
这些都是 js正则 最基本的使用方法。
二、jqry正则表达式的处理
1.test方法
reg=/^\w{3,}@\w+(\.\w+)+$/;
|
2 | if(!reg.test(obj)){
|
3 | $("#test").html("<b>请输入正确的邮箱地址</b>");
|
4 | } |
$.formatDate.patternParts = /^(yy(yy)?|M(M(M(M)?)?)?|d(d)?|EEE(E)?|a|H(H)?|h(h)?|m(m)?|s(s)?|S)/;
|
2 | var
matched = $.formatDate.patternParts.exec(pattern);
|
3 | if
(matched) { |
4 | //如果符合matched为数组 index:0为符合项,否则为null
|
5 | result.push($.formatDate.patternVal[matched[0]].call(this,date));
|
6 | pattern = pattern.slice(matched[0].length);
|
7 | } |
JavaScript与jQuery正则表达式基础及应用
本文深入解析JavaScript和jQuery中的正则表达式基础概念与使用方法,包括对象创建、常用方法如test、exec、match等,并提供简单、负向、范围和组合类的正则表达式实例。同时,介绍了jQuery中正则表达式的特定处理方法,如test、exec方法的应用。
6万+

被折叠的 条评论
为什么被折叠?



