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 相关文章推荐
js GridView 实现自动计算操作代码
Mar 25 Javascript
jQuery 使用手册(二)
Sep 23 Javascript
cnblogs中在闪存中屏蔽某人的实现代码
Nov 14 Javascript
jquery 操作日期、星期、元素的追加的实现代码
Feb 07 Javascript
javascript操作字符串的原生方法
Dec 22 Javascript
jQuery大于号(>)选择器的作用解释
Jan 13 Javascript
Bootstrap精简教程
Nov 27 Javascript
BootStrap文件上传样式超好看【持续更新】
May 10 Javascript
AngularJS实现给动态生成的元素绑定事件的方法
Dec 14 Javascript
JavaScript实现动态留言板
Mar 16 Javascript
JavaScript浅层克隆与深度克隆示例详解
Sep 01 Javascript
Vue 防止短时间内连续点击后多次触发请求的操作
Nov 11 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 smarty 二级分类代码和模版循环例子
2011/06/01 PHP
深入解析php中的foreach函数
2013/08/31 PHP
推荐:极酷右键菜单
2006/11/29 Javascript
JS日历 推荐
2006/12/03 Javascript
javascript Ext JS 状态默认存储时间
2009/02/15 Javascript
ashx文件获取$.ajax()方法发送的数据
2016/05/26 Javascript
JavaScript事件详细讲解
2016/06/27 Javascript
谈谈target=_new和_blank的不同之处
2016/10/25 Javascript
BootStrap实现响应式布局导航栏折叠隐藏效果(在小屏幕、手机屏幕浏览时自动折叠隐藏)
2016/11/30 Javascript
详解Vue 实例中的生命周期钩子
2017/03/21 Javascript
Vue Ajax跨域请求实例详解
2017/06/20 Javascript
JavaScript之underscore_动力节点Java学院整理
2017/07/03 Javascript
详解如何提高 webpack 构建 Vue 项目的速度
2017/07/03 Javascript
JavaScript实现单击网页任意位置打开新窗口与关闭窗口的方法
2017/09/21 Javascript
react-native fetch的具体使用方法
2017/11/01 Javascript
nodejs搭建本地服务器轻松解决跨域问题
2018/03/21 NodeJs
Angular父组件调用子组件的方法
2018/04/02 Javascript
angular学习之动态创建表单的方法
2018/12/07 Javascript
vue实现购物车的监听
2020/04/20 Javascript
python抓取百度首页的方法
2015/05/19 Python
Python实现的矩阵类实例
2017/08/22 Python
Python对ElasticSearch获取数据及操作
2019/04/24 Python
pytorch 更改预训练模型网络结构的方法
2019/08/19 Python
Python内置加密模块用法解析
2019/11/25 Python
如何将 awk 脚本移植到 Python
2019/12/09 Python
Python数据可视化实现漏斗图过程图解
2020/07/20 Python
CSS3 box-sizing属性
2009/04/17 HTML / CSS
css3 position fixed固定居中问题解决方案
2014/08/19 HTML / CSS
基于css3 animate制作绚丽的动画效果
2015/11/24 HTML / CSS
canvas实现按住鼠标移动绘制出轨迹的示例代码
2018/02/05 HTML / CSS
时尚圣经:The Fashion Bible
2019/03/03 全球购物
销售顾问的岗位职责
2013/11/13 职场文书
中专毕业生的自荐书
2014/07/01 职场文书
入党宣誓大会后的感想
2015/08/10 职场文书
小学四年级班主任工作经验交流材料
2015/11/02 职场文书
pytorch MSELoss计算平均的实现方法
2021/05/12 Python