JS正则表达式获取分组内容的方法详解

 更新时间:2013年11月15日 16:21:40   作者:  
这篇文章主要介绍了JS正则表达式获取分组内容的方法,有需要的朋友可以参考一下

支持多次匹配的方式:

复制代码 代码如下:

var testStr = "now test001 test002";  
var re = /test(\d+)/ig;   
var r = "";  
while(r = re.exec(testStr)) {  
    alert(r[0] + "  " + r[1]);  

此外也可以用testStr.match(re),但是这样的话就不能有g的选项,而且只能得到第一个匹配。

另外备忘一下:

正则表达式对象的属性及方法:
  预定义的正则表达式拥有有以下静态属性:input, multiline, lastMatch, lastParen, leftContext,

rightContext和$1到$9。其中input和multiline可以预设置。其他属性的值在执行过exec或test方法后被根据

不同条件赋以不同的值。许多属性同时拥有长和短(perl风格)的两个名字,并且,这两个名字指向同一个值。(JavaScript模拟perl的正则表达式)

正则表达式对象的属性:
属性 含义
$1...$9 如果它(们)存在,是匹配到的子串 
$_ 参见input 
$* 参见multiline 
$& 参见lastMatch 
$+ 参见lastParen 
$` 参见leftContext 
$''          参见rightContext 
constructor     创建一个对象的一个特殊的函数原型 
global        是否在整个串中匹配(bool型) 
ignoreCase     匹配时是否忽略大小写(bool型) 
input        被匹配的串 
lastIndex      最后一次匹配的索引 
lastParen      最后一个括号括起来的子串 
leftContext     最近一次匹配以左的子串 
multiline      是否进行多行匹配(bool型) 
prototype      允许附加属性给对象 
rightContext    最近一次匹配以右的子串 
source        正则表达式模式 
lastIndex      最后一次匹配的索引

正则表达式对象的方法:
方法 含义
compile       这个应该是指重新定义正则表达式的内容
exec       执行查找,可以利用while的方式多次查找
test        进行匹配 
toSource      返回特定对象的定义(literal representing),其值可用来创建一个新的对象。重载Object.toSource方法得到的。 
toString      返回特定对象的串。重载Object.toString方法得到的。 
valueOf       返回特定对象的原始值。重载Object.valueOf方法得到

例子:

复制代码 代码如下:

<script language="JavaScript">
var myReg = /(w+)s(w+)/;
var str  = "John Smith";
var newstr = str.replace(myReg, "$2, $1");
document.write(newstr);
</script>

将输出"Smith, John"

相关文章

  • javascript头像上传代码实例

    javascript头像上传代码实例

    这篇文章主要介绍了javascript头像上传代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • 微信小程序实现分页查询详解

    微信小程序实现分页查询详解

    本篇文章给大家分享的是有关微信小程序分页查询的实现,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
    2022-08-08
  • GoJs连线绘图模板Link使用示例详解

    GoJs连线绘图模板Link使用示例详解

    这篇文章主要为大家介绍了GoJs连线绘图模板Link使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • 前端url拼接参数格式&?用&和? =拼接方法实例

    前端url拼接参数格式&?用&和? =拼接方法实例

    在一些情况下需要直接往url上拼接请求参数,下面这篇文章主要给大家介绍了关于前端url拼接参数格式&?用&和? =拼接的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-02-02
  • JS生成一维码(条形码)功能示例

    JS生成一维码(条形码)功能示例

    这篇文章主要介绍了JS生成一维码(条形码)功能,结合完整实例形式分析了JS插件生成条形码的具体步骤与相关操作技巧,需要的朋友可以参考下
    2017-01-01
  • js实现select下拉框选择

    js实现select下拉框选择

    这篇文章主要为大家详细介绍了js实现select下拉框选择,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-01-01
  • JS异步代码单元测试之神奇的Promise

    JS异步代码单元测试之神奇的Promise

    这篇文章主要介绍了JS异步代码单元测试之神奇的Promise,对异步感兴趣的同学,可以参考下
    2021-05-05
  • IE6-IE9不支持table.innerHTML的解决方法分享

    IE6-IE9不支持table.innerHTML的解决方法分享

    让ie6-ie9支持table.innerHTML,其实这里只是对table做了处理,对其他不支持的元素可以用类似的方案
    2012-09-09
  • 微信小程序实现短信登录的实战

    微信小程序实现短信登录的实战

    项目要求增加短信登录及人脸识别登录功能,本文就来实现一下 短信登录功能,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • Javascript中的async awai的用法

    Javascript中的async awai的用法

    本篇文章主要介绍了Javascript中的async/awai的用法,将分享async / await是如何工作的,有兴趣的可以了解一下
    2017-05-05

最新评论