本文实例讲述了JavaScript常用正则函数用法。分享给大家供大家参考,具体如下:

JavaScript正则函数match、exec、test、search、replace、split使用。

*属性 "g"、"i" 和 "m",分别用于指定全局匹配、区分大小写的匹配和多行匹配。

1、match()函数

match()函数:如果未找到匹配,则返回值为 null;如果找到了匹配,则返回一个结果数组。

function RegExpMatch() {
  var str = "https://www.jb51.net/jiaoben";
  var reg = /[j][\s\S]{3}/gi; // 注意g将全文匹配,不加将永远只返回第一个匹配
  var result = str.match(reg);
  alert(result); //返回:jb51,jiao
}

2、exec()函数

exec()函数:如果未找到匹配,则返回值为 null;如果找到了匹配,则返回一个结果数组。

此数组的第 0 个元素是与正则表达式相匹配的文本,第1个元素与 RegExpObject的第1个子表达式相匹配的文本(如果有的话),第2个元 素是与RegExpObject的第2个子表达式相匹配的文本(如果有的话),以 此类推。

function RegExpExec() {
  var str = "1234-5678";
  var reg = /(\d{4})-(\d{4})/;
  var result = reg.exec(str);
  alert(result); //返回:1234-5678,1234,5678
  alert(result[1] + ' ' + result[2]); //1234 5678
  alert(RegExp.$1 + ' ' + RegExp.$2); //1234 5678
}

3、test()函数

test()函数:返回一个 Boolean 值,它指出在被查找的字符串中是否匹配给出的正则表达式。

function RegExpTest() {
  var str = "https://www.jb51.net/jiaoben";
  var reg = /^http:\/\/([\w-]+\.)+[\w-]+(\/[\w-]*)"color: #0000ff">search ()函数:返回与正则表达式查找内容匹配的第一个子字符串的位置,如果未找到匹配,则返回值为 -1。

function RegExpSearch() {
  var str = "https://www.jb51.net/jiaoben";
  var reg = /(jiaoben)/;
  var result = str.search(reg);
  alert(result);  //20
}

5、replace()函数

replace()函数:返回根据正则表达式进行文字替换后的字符串的复制。

function RegExpReplace() {
  var str = "https://www.jb51.net/jiaoben";
  var reg = /^(http:\/\/www.jb51.net)\/([\w]*)$/;
  var result = str.replace(reg, "$1");
  alert(result);  //https://www.jb51.net"color: #0000ff">split()函数:将一个字符串分割为子字符串,然后将结果作为字符串数组返回。

function RegExpSplit() {
  var str = "1@4@7@9";
  var reg = /@/;
  var result = str.split(reg); ;
  alert(result);  //[1,4,7,9]
}

PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:

JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript

正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript正则表达式技巧大全》、《JavaScript替换操作技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》、《JavaScript中json操作技巧总结》、《JavaScript错误与调试技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?