JavaScript常用正则函数用法示例


Posted in Javascript onJanuary 23, 2017

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

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

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

1、match()函数

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

function RegExpMatch() {
  var str = "https://3water.com/jiaoben";
  var reg = /[j][\s\S]{3}/gi; // 注意g将全文匹配,不加将永远只返回第一个匹配
  var result = str.match(reg);
  alert(result); //返回:3water,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://3water.com/jiaoben";
  var reg = /^http:\/\/([\w-]+\.)+[\w-]+(\/[\w-]*)?$|^([\w-]+\.)+[\w-]+(\/[\w-]*)?$/;  //验证URL格式
  var result = false;
  if (reg.test(str)) {
    result = true;
  }
  alert(result);  //true
}

4、search ()函数

search ()函数:返回与正则表达式查找内容匹配的第一个子字符串的位置,如果未找到匹配,则返回值为 -1。

function RegExpSearch() {
  var str = "https://3water.com/jiaoben";
  var reg = /(jiaoben)/;
  var result = str.search(reg);
  alert(result);  //20
}

5、replace()函数

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

function RegExpReplace() {
  var str = "https://3water.com/jiaoben";
  var reg = /^(http:\/\/3water.com)\/([\w]*)$/;
  var result = str.replace(reg, "$1?userId=$2");
  alert(result);  //https://3water.com?userId=jiaoben
}

6、split()函数

split()函数:将一个字符串分割为子字符串,然后将结果作为字符串数组返回。

function RegExpSplit() {
  var str = "1@4@7@9";
  var reg = /@/;
  var result = str.split(reg); ;
  alert(result);  //[1,4,7,9]
}
Javascript 相关文章推荐
JavaScript 变量命名规则
Sep 23 Javascript
javascript解决innerText浏览器兼容问题思路代码
May 17 Javascript
JS控制阿拉伯数字转为中文大写示例代码
Sep 04 Javascript
jQuery中bind,live,delegate与one方法的用法及区别解析
Dec 30 Javascript
jquery动态添加option示例
Dec 30 Javascript
详解 javascript中offsetleft属性的用法
Nov 11 Javascript
纯js实现手风琴效果代码
Apr 17 Javascript
JS实现隔行换色的表格排序
Mar 27 Javascript
原生js检测页面加载完毕的实例
Sep 11 Javascript
react 兄弟组件如何调用对方的方法示例
Oct 23 Javascript
使用FormData实现上传多个文件
Dec 04 Javascript
antd中table展开行默认展示,且不需要前边的加号操作
Nov 02 Javascript
详解微信小程序 wx.uploadFile 的编码坑
Jan 23 #Javascript
微信小程序侧边栏滑动特效(左右滑动)
Jan 23 #Javascript
微信小程序技巧之show内容展示,上传文件编码问题
Jan 23 #Javascript
Javascript同时声明一连串(多个)变量的方法
Jan 23 #Javascript
jQuery点击导航栏选中更换样式的实现代码
Jan 23 #Javascript
jQuery弹出层插件popShow(改进版)用法示例
Jan 23 #Javascript
JS判断指定dom元素是否在屏幕内的方法实例
Jan 23 #Javascript
You might like
收藏的一个php小偷的核心程序
2007/04/09 PHP
php根据日期或时间戳获取星座信息和生肖等信息
2015/10/20 PHP
php查找字符串中第一个非0的位置截取
2017/02/27 PHP
解决laravel groupBy 对查询结果进行分组出现的问题
2019/10/09 PHP
计算新浪Weibo消息长度(还可以输入119字)
2013/07/02 Javascript
Angular中的Promise对象($q介绍)
2015/03/03 Javascript
jquery实现Ctrl+Enter提交表单的方法
2015/07/21 Javascript
js判断上传文件后缀名是否合法
2016/01/28 Javascript
JavaScript必知必会(三) String .的方法来自何方
2016/06/08 Javascript
阿里云ecs服务器中安装部署node.js的步骤
2016/10/08 Javascript
JavaScript对象_动力节点Java学院整理
2017/06/23 Javascript
VUE实现表单元素双向绑定(总结)
2017/08/08 Javascript
jquery实现回车键触发事件(实例讲解)
2017/11/21 jQuery
JavaScript重复元素处理方法分析【统计个数、计算、去重复等】
2017/12/14 Javascript
js中getter和setter用法实例分析
2018/08/14 Javascript
基于vue实现web端超大数据量表格的卡顿解决
2019/04/02 Javascript
Vue中props的详解
2019/05/16 Javascript
Element Rate 评分的使用方法
2020/07/27 Javascript
js动态生成表格(节点操作)
2021/01/12 Javascript
Python实现爬取知乎神回复简单爬虫代码分享
2015/01/04 Python
python实现下载文件的三种方法
2017/02/09 Python
python根据unicode判断语言类型实例代码
2018/01/17 Python
Python使用matplotlib绘图无法显示中文问题的解决方法
2018/03/14 Python
python使用插值法画出平滑曲线
2018/12/15 Python
PyQt弹出式对话框的常用方法及标准按钮类型
2019/02/27 Python
python字典嵌套字典的情况下找到某个key的value详解
2019/07/10 Python
实例详解Python装饰器与闭包
2019/07/29 Python
Python使用itchat模块实现简单的微信控制电脑功能示例
2019/08/26 Python
手把手教你pycharm专业版安装破解教程(linux版)
2019/09/26 Python
自我鉴定范文200字
2013/10/02 职场文书
教师自荐信
2013/12/10 职场文书
2014年实验室工作总结
2014/12/03 职场文书
叶问观后感
2015/06/15 职场文书
2016新春团拜会致辞
2015/08/01 职场文书
Python基础之字符串格式化详解
2021/04/21 Python
Python绘制地图神器folium的新人入门指南
2021/05/23 Python