`

js 正则表达写法

阅读更多
一 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
   }


分享到:
评论

相关推荐

    正则表达式大于50万的判断js与php写法.docx

    这两种语言的正则表达式写法有所不同,但都用于确保用户输入的投资金额符合特定条件。 在JavaScript部分,可以看到一个jQuery插件`formValidator`被用来处理表单验证。首先,它设置了最小值(1)以确保投资金额非零...

    清除整站下载文件中的冗余代码

    if\(confirm\('htt[^"]*\)(注意其他代码是否使用此类语法表达) 匹配不带网址的部分,替换成 空 3、css文件中,还有一些类似/*tpa=http://image.39.net/cancer/images/focus_bmark_bg.gif*/这样的代码 用正则,是...

    几个比较常用的JS

    正则表达式在JS中用于文本模式匹配和搜索,`/pattern/flags`是正则的基本写法,`test()`, `match()`, `replace()`等方法则用于执行匹配和替换操作。 10. 错误处理: 使用`try...catch`结构来捕获和处理运行时错误...

    深入浅析JavaScript中的RegExp对象

    JS中的正则对象 概述 正则表达式(regular expression)是一种表达文本模式(即字符串结构)的方法,有点像字符串的模板,常常用作按照“给定模式”匹配文本的工具。比如,正则表达式给出一个 Email 地址的模式,...

    JavaScript权威指南(第6版)

    正则表达式在文本处理中不可或缺,本书对JavaScript中的正则表达式进行了全面讲解,包括模式匹配、替换、分组和回溯等高级特性。此外,DOM操作和BOM处理也是前端开发的重点,书中详细介绍了如何通过JavaScript与HTML...

    leetcode卡-leetcode-practice::cloud:Chittyのleetcode刷题记录:writing_hand:

    leetcode卡 Leetcode-practice 书到用时方恨少,练得少就想不到。 愿你有事没事多刷题。 ​ ——2019.07 简介 内容为:LeetCode算法题刷题 此项目记录了Chitty的leetcode刷题日常,写...正则表达说明参看

    中文数字转换阿拉伯数字.rar

    - **错别字和不规范写法**:实际文本中可能存在错误的数字写法,转换时需要有一定的容错机制。 6. **案例分析**: - 例如,将“一千二百三十四万五千六百七十八”转换为阿拉伯数字,需按照“千”、“万”、“亿”...

    一句话jquery 取中文字节数

    它通过一个简洁的API提供了一种写法更少而做更多的编程体验。 #### 1.2 jQuery在字符计数中的应用 题目提到的“一句话jquery取中文字节数”实际上是指利用jQuery来计算中文字符串的字节数。这在很多应用场景中非常...

    Java学习笔记-个人整理的

    {1.2}数字表达方式}{17}{section.1.2} {1.3}补码}{19}{section.1.3} {1.3.1}总结}{23}{subsection.1.3.1} {1.4}数据类型}{23}{section.1.4} {1.4.1}整数与浮点数}{23}{subsection.1.4.1} {1.4.1.1}浮点数原理}...

Global site tag (gtag.js) - Google Analytics