温故知新 javascript 正则表达式

转载 2012年03月23日 10:33:34
 
  很长时间没看 正则表达式了,碰巧今天用到,温故知新了一把 看书学习吧
50% 的举一反三练习中的原创,谢谢。
 
一 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));  //true
     
       //检查字符是否存在  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";  //\u0062cf
       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";  //\u0062cf
       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";  //\u0062cf
       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正则 最基本的使用方法,看不会的请复制到笔记本练习下,看会了再往下面看。
 
二  javascript  正则表达式是分组知识
   
    1) 简单分组
    

Code

正则表达式--温故知新

1.了解正则表达式 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。 正则表...
  • shenwansan_gz
  • shenwansan_gz
  • 2016年09月13日 10:48
  • 271

javascript常用正则表达式和解析

一、正则表达式(regular expression简称res) 1、定义: 一个正则表达式就是由普通字符以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。...
  • u012572955
  • u012572955
  • 2015年07月20日 09:16
  • 2217

JavaScript的中文正则及常用正则表达式

  • QQ635785620
  • QQ635785620
  • 2013年09月06日 11:03
  • 5311

温故知新: JavaScript

1.求y和z的值是多少? var x = 1; var y = 0; var z = 0; function add(n){n=n+1;} y = add(x); function add(n){n...
  • wangnan537
  • wangnan537
  • 2015年10月12日 08:00
  • 562

温故知新: 正则表达式简记

正则表达式(Regular Expression,在代码中常简写为regex、regexp或RE),即"描述某种规则的表达式",是计算机科学的一个概念。 一个正则表达式通常被称为一个模式(patter...
  • wangnan537
  • wangnan537
  • 2015年06月23日 15:22
  • 495

JavaWeb——JavaScript常用正则表达式

JavaScript常用正则表达式
  • RamProg
  • RamProg
  • 2015年09月11日 23:34
  • 203

JavaScript正则表达式----RegExp类型, 代码说明简单易懂

RegExp正则表达式定义RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具。匹配原则: 贪婪匹配 直接量语法 代码说明, 例题讲解, 持续更新, 新手指导, 白话理解正则表达式...
  • c_kite
  • c_kite
  • 2017年01月01日 00:15
  • 515

Javascript常用正则表达式以及JS常见正则表达式笔试题

JS正则表达式,在表单验证等方面都有应用,下面结合学习经过,整理一些初学 者所需要掌握的一些基本JS正则规则: 1.正则表达式基础语法练习 (1)校验邮政编码(由六位组成) 这...
  • liwusen
  • liwusen
  • 2016年02月21日 13:56
  • 2797

javascript 正则表达式使用说明详细教程

1,正则表达式的作用:匹配一个字符串中的一些内容 2,声明和使用: 1)构造函数 var reg=new RegExp(/表达式/) 2)字面量 var reg=/表达式/   推荐使用 eg...
  • fish86
  • fish86
  • 2017年01月09日 20:39
  • 334

JS总结(二)正则表达式

正则表达式中字母含义:        /i : 忽略大小写       /g :全文查找出现的所有匹配字符       /m:多行查找       /gi:全文查找、忽略大小写   ...
  • a1314517love
  • a1314517love
  • 2013年03月12日 20:00
  • 4630
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:温故知新 javascript 正则表达式
举报原因:
原因补充:

(最多只允许输入30个字)