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. 三元运算+lambda表达式

    #三元运算,三目运算,if else简写 if 1 == 1: name = "liangml" else: name = "NB" #如果 1==1 成立,n ...

  2. IBatis.net 输出SQL语句(七)

    一.IBatis.net输出SQL语句到控制台 输出IBatis.net生成的SQL语句到控制台,能够方便调试. 如果要想输出IBatis.net的SQL语句到控制台,那么只需要做如下配置即可: &l ...

  3. MONGODB 查询

    1,mongoDB 取模运算:db.person.find({index:{$mod:[5,1]}})db.person.find({index:{$not:{$mod:[5,1]}}})2,name ...

  4. IT公司100题-12-求1+2+…+n

    问题描述: 求1+2+…+n,要求不能使用乘除法.for.while.if.else.switch.case等关键字以及条件判断语句(A?B:C).   分析: 利用类的静态变量实现: new一含有n ...

  5. IT公司100题-4-在二元树中找出和为某一值的所有路径

    问题描述: 输入一个整数和一棵二元树.从树的根结点开始往下访问一直到叶结点所经过的所有结点形成一条路径.打印出和与输入整数相等的所有路径. 例如输入整数30和如下二元树   14 / \ 5 16 / ...

  6. 数据结构-Vector

    自定义Vector实现: /////////////////////////////////////////////////////////////////////////////// // // F ...

  7. K2 如何和 Java 做整合?

    本文内容来自K2社区 问题:我们清楚K2 产品是基于.net 平台,我们有需求要将Java平台的表单和K2进行整合,使用K2.可以有什么方案建议? 专家解答: 这个需求也是比较常见的,以下是我的一些经 ...

  8. 用K2 smartforms开发一个应用程序究竟比ASP.NET快多少?

    这次试验的起因是一场内部辩论. “用K2 smartforms开发一个应用程序究竟比ASP.NET快多少?” 我们推测是快4倍. 但是经过测试发现,我们推测错了. 本文记录了试验的规划.过程以及令人惊 ...

  9. CCNA 6.9

    page 201 show ip route    Correction(05-4)   Basic configuration of R1:   enable configure terminal ...

  10. checkbox的全选、反选(计算价格)

    package com.baidu.jisuan; import java.util.ArrayList;import java.util.List; import com.baidu.adapter ...