js的正则函数主要有有replace,match,test,search,exec。

首先对文中的变量进行说明:
  rgExp为包含正则表达式模式和可用标志的正则表达式对象。也可以是包含正则表达式模式和可用标志的变量名或字符串文字。

  /i (忽略大小写)
  /g (全文查找出现的所有匹配字符)

(1)match 方法 
  使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回,如果未能匹配到,则返回null。 
  stringObj.match(rgExp)

例:

  var str = "ThIS isn't me";

  var reg = /is/ig;

  var ret = str.match(reg);    

  console.log(ret);   //["IS", "is"]

(2)replace 方法

  返回根据正则表达式进行文字替换后的字符串的复制,原字符串不变。 
  
stringObj.replace(rgExp, replacement);

例:

var str = "i love china!";

  var pattern = /i/g;

  var ret = str.replace(pattern, "I");

alert(ret); //I love chIna!

  ECMAScript v3 规定,replace() 方法的参数 replacement 可以是函数而不是字符串。在这种情况下,每个匹配都调用该函数,它返回的字符串将作为替换文本使用。

(3)test 方法 
  返回一个 Boolean 值,它指出在被查找的字符串中是否匹配给出的正则表达式,如果是则返回 true,否则就返回 false。

例:

  var str = "bbs.byr.cn";

  var reg = /b/;

  var ret = reg.test(str);

alert(ret); //true

(4)search 方法 
  返回与正则表达式查找内容匹配的 第一个子字符串 (与是否全局查找不管) 的索引数,否则返回-1 。 
  stringObj.search(rgExp) ;

例:

var str = "This isn't me";

  var reg = /is/;     //   /is/g  (结果一样);

  var ret = str.search(reg);

alert(ret);  //2

(5)exec 方法 

  用正则表达式模式在字符串中查找,并返回该查找结果的第一个值(数组),如果匹配失败,返回null。如果想得到全部查询结果,可以使用while循环。

 返回数组包含:

  input:整个被查找的字符串的值; 
  index:匹配结果所在的位置(位); 
  lastInput:下一次匹配结果的位置; 
  arr:结果值,arr[0]全匹配结果,arr[1,2...]为表达式内()的子匹配,由左至右为1,2...。 

例:

  var str = "i love china!";

  var reg = /i\B/g;   i后不是空格

  var ret = reg.exec(str);

alert(ret); // i

console.log(ret); //["i", index: 9, input: "i love china!"]

(6)split 方法 
  将一个字符串分割为子字符串,然后将结果作为字符串数组返回。 
  stringObj.split([separator[, limit]])

  其中separator表示分割方式,limit表示分割后的返回个数。

例:

  var s, ss; 
  var s = "The rain in Spain falls mainly in the plain."; 
  ss = s.split(/s/i);   // ['The rain in' , 'pain fall' , 'mainly in the plain.']

js正则函数的更多相关文章

  1. js正则函数match、exec、test、search、replace、split使用介绍集合

    match 方法 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回. stringObj.match(rgExp) 参数 stringObj 必选项.对其进行查找的 String 对 ...

  2. js正则函数match、exec、test、search、replace、split使用介绍集合,学习正则表达式的朋友可以参考下。

    match 方法 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回. stringObj.match(rgExp) 参数 stringObj 必选项.对其进行查找的 String 对 ...

  3. js正则函数match、exec、test、search、replace、split使用集合

    match 方法 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回. stringObj.match(rgExp) 参数 stringObj 必选项.对其进行查找的 String 对 ...

  4. js正则函数match、exec、test、search、replace、split使用介绍

    match() 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回. stringObj.match(rgExp) stringObj 必选项.对其进行查找的 String 对象或字符 ...

  5. js正则函数中test和match的区别

    test是RegExp的方法,参数是字符串,返回值是boolean类型. match是String的方法,参数是正则表达式,返回值是数组. <script type="text/jav ...

  6. js 正则函数初级之二

    1. 小括号在正则中: 1.1 小括号:表示分组 1.2 分组之后,,每个组都有一个序号,从左到右,依次为1,2,3.......:可以使用 RegExp.$1,RegExp.$2,RegExp.$3 ...

  7. js 正则函数初级

    1.test :正则匹配字符串,如果成功则返回true,若果失败则返回false 格式:/正则表达式/.test(字符串) 默认吗匹配规则,区分大小写:如果不区分大小写,则加修饰符 i 例子: < ...

  8. php正则 与 js正则

    PHP中的正则表达式函数 在PHP中有两套正则表达式函数库.一套是由PCRE(Perl Compatible Regular Expression)库提供的.PCRE库使用和Perl相同的语法规则实现 ...

  9. php中的正则函数主要有三个-正则匹配,正则替换

    php中变量的声明? 由于php声明变量的时候, 不支持使用 var关键字, 又不能直接写一个变量名字, 孤零零的放在那里, 所以, 在php中声明变量的方式, 同时也是给变量初始化的形式, 即: & ...

随机推荐

  1. WDCP管理面板安装启动EXIF、bcmath完整步骤

    一般我们网站建设的需要,如果使用WDCP面板默认的功能就足够使用,如果需要特殊程序的特定组件支持,就需要独立的安装支持组件.比如一位朋友的程序需要支持EXIF.bcmath组件,这不老蒋寻找解决方法, ...

  2. Linux-如何添加路由表

    linux下静态路由修改命令方法一:添加路由route add -net 192.168.0.0/24 gw 192.168.0.1route add -host 192.168.1.1 dev 19 ...

  3. C++-Effective C++ Items

    Item2:尽量以const,enum,inline替换#define 原因:1, #define ASPECT_RATIO 1.63 编译错误时产生魔数,应以const double Aspect_ ...

  4. SQlServer 从系统表 sysobjects 中获取数据库中所有表或存储过程等对象

    [sysobjects] 一.概述 系统对象表. 保存当前数据库的对象,如约束.默认值.日志.规则.存储过程等,该表中包含该数据库中的表 存储过程 视图等所有对象 在sqlserver2005,sql ...

  5. 解决maven Generating project in Interactive mode卡死问题(转)

    原文链接:http://blog.csdn.net/only_wan/article/details/52975760 mvn 创建时在generating project in interactiv ...

  6. NABCD分析

    NABCD——今日事 N(Need):开创的成就系统可以在一定程度上督促用户坚持下来. A(Approach):做一个APP软件,是在android平台构建. B(Benefit):可以逐步改变用户的 ...

  7. <转>thinkphp自动验证无效的问题

    新手入门thinkphp,试用自动验证表单输入数据功能,却发现怎么都不能调用自动验证,自动验证无效,原因竟是一个小细节的疏忽,学习一定要细心啊! Action方法: IndexAction下的adds ...

  8. poj2955 区间dp

    //Accepted 200 KB 63 ms //区间dp //dp[i][j] 从i位到j位能得到的最大匹配数 //dp[i][j]=max(dp[i+1][j-1] (s[i-1]==s[j-1 ...

  9. CAD系统变量(参数)大全

    所谓系统变量就是一些参数,这些参数有些是可以在“选项”或其他对话框中进行设置的,有些这必须通过在命令行输入变量名进行设置,当然对于高手来说,还可以通过二次开发程序来进行控制. CAD有很多的变量,例如 ...

  10. 链表操作----将单链表向右旋转 K 个位置

    给定一个单链表,设计一个算法实现链表向右旋转 K 个位置. 举例: 给定 1->2->3->4->5->6->NULL, K=3 则     4->5-> ...