简单谈谈JS中的正则表达式


Posted in Javascript onSeptember 11, 2017

1、正则表达式包括两部分

①定义正则表达式的规则;

②正则表达式的模式(i/g/m);

2、声明正则表达式

① 字面量声明: var reg = /表达式规则/表达式模式;

eg:var reg = /white/g;

② 使用new关键字: var reg = new RegExp("表达式规则","表达式模式")

eg: var reg = new RegExp("white","g");

3、正则表达式的三种模式

① g:全局匹配。不加g默认为非全局匹配,只匹配第一个符合要求的字符串;

eg:"www".replace(/w/ ,"#"); -->#ww;

"www".replace(/w/g,"#"); -->###;

② i:忽略大小写。不加i,默认要求大写也匹配;

eg: "aAa".replace( /A/ ,"#"); -->a#a;

"aAa".replace( /A/i ,"#"); -->#Aa;

"aAa".replace( /A/gi ,"#"); -->###;

③ m:多行匹配模式。不带m,则一个字符串只有一个开头,一个结尾。带m后,如果字符串分为多行,则每行都有一个开头和结尾。

eg: `abc`#bc

abc`.replace(/^a/g,"#") --> abc`=

`abc``#bc

abc`.replace(/^a/gm,"#") --> #bc`

[如何写多行字符串?]

>>>普通字符串中,插入\n表示换行。"abc\nabc"
>>>ES6中,允许使用反引号`包裹字符串。反引号包裹的字符串中,会保留空格与回车。

eg: `abc

abc`

4、正则表达式的常用方法

① test():检测一个字符串,是否符合正则表达式的验证。返回true或false;

eg: /white/.test("whitewhitewhite"); --> true

② exec():检测一个字符串,是否符合正则表达式的验证。如果验证成功,返回结果数组;如果验证失败,返回null;

结果数组中:

index属性:表示从字符串的第几个字符,开始符合正则要求

input属性:返回完整的被检索的字符串

下标第0个:表示符合整个正则表达式的那部分字符串

下标的第一个到第n个:表示符合正则的第一个到第n个子表达式的部分。子表达式,就是正则中的()。也就是,正则中有几个(),结果数组中就有几个下标。

eg: /12(3)(4)5/.exec("aaa12345");

[

0:12345;

1:3;

2:4;

index:3;

input:"aaa12345";

length:3

]

5、正则表达式的基本案例

①验证邮政编码

简单谈谈JS中的正则表达式结果为:简单谈谈JS中的正则表达式

②验证手机号

简单谈谈JS中的正则表达式结果为:简单谈谈JS中的正则表达式

③年龄在0-120岁之间

简单谈谈JS中的正则表达式

④域名:http://xxxxx.xxxx.com

var http = /^(http|https):\/\/([A-Za-z0-9\-]+\.){2}[A-Za-z]{2,4}(\.[A-Za-z]{2,4})?$/;

⑤验证IP地址(0.123.11.255)

简单谈谈JS中的正则表达式

var ip = /^((\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.){3}(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])$/;

以上这篇简单谈谈JS中的正则表达式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
dotopAlert 提示用户需安装播放器的代码
Sep 17 Javascript
随窗体滑动的小插件sticky源码
Jun 21 Javascript
jQuery源码解读之addClass()方法分析
Feb 20 Javascript
js中split和replace的用法实例
Feb 28 Javascript
Bootstrap Metronic完全响应式管理模板学习笔记
Jul 08 Javascript
Vue.js教程之计算属性
Nov 11 Javascript
jQuery 获取select选中值及清除选中状态
Dec 13 Javascript
AngularJS表单基本操作
Jan 09 Javascript
解决vue2.x中数据渲染以及vuex缓存的问题
Jul 13 Javascript
vue+springboot前后端分离实现单点登录跨域问题解决方法
Jan 30 Javascript
基于js实现判断浏览器类型代码实例
Jul 17 Javascript
uniapp实现可滑动选项卡
Oct 21 Javascript
详解Vue双向数据绑定原理解析
Sep 11 #Javascript
基于DOM节点删除之empty和remove的区别(详解)
Sep 11 #Javascript
在原生不支持的旧环境中添加兼容的Object.keys实现方法
Sep 11 #Javascript
基于bootstrop常用类总结(推荐)
Sep 11 #Javascript
利用JQuery操作iframe父页面、子页面的元素和方法汇总
Sep 10 #jQuery
利用纯js + transition动画实现移动端web轮播图详解
Sep 10 #Javascript
原生JS实现移动端web轮播图详解(结合Tween算法造轮子)
Sep 10 #Javascript
You might like
由php if 想到的些问题
2008/03/22 PHP
PHP 采集程序中常用的函数
2009/12/09 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
2017/08/31 PHP
PHP实现文件上传后台处理脚本
2020/03/04 PHP
一个高效的JavaScript压缩工具下载集合
2007/03/06 Javascript
Javascript 判断客户端浏览器类型代码
2010/03/01 Javascript
可兼容IE的获取及设置cookie的jquery.cookie函数方法
2013/09/02 Javascript
jquery 操作iframe的几种方法总结
2013/12/13 Javascript
分享JavaScript获取网页关闭与取消关闭的事件
2013/12/13 Javascript
JS数组去重与取重的示例代码
2014/01/24 Javascript
javascript中的括号()用法小结
2014/04/14 Javascript
jQuery中replaceAll()方法用法实例
2015/01/16 Javascript
浅析Javascript中bind()方法的使用与实现
2016/04/29 Javascript
去除html代码里面的script正则方法
2016/05/19 Javascript
使用Javascript监控前端相关数据的代码
2016/10/27 Javascript
监听angularJs列表数据是否渲染完毕的方法示例
2018/11/07 Javascript
解决layui的table插件无法多层级获取json数据的问题
2019/09/19 Javascript
vue 解决路由只变化参数页面组件不更新问题
2019/11/05 Javascript
理解JavaScript中的Proxy 与 Reflection API
2020/09/21 Javascript
Python单元测试unittest的具体使用示例
2018/12/17 Python
用django-allauth实现第三方登录的示例代码
2019/06/24 Python
python生成器/yield协程/gevent写简单的图片下载器功能示例
2019/10/28 Python
HTML5 canvas基本绘图之图形变换
2016/06/27 HTML / CSS
Marks & Spencer爱尔兰:英国马莎百货
2016/04/20 全球购物
英国女士家居服网站:hush
2017/08/09 全球购物
上课迟到检讨书
2014/02/19 职场文书
个人社会实践自我鉴定
2014/03/24 职场文书
求职信怎么写
2014/05/23 职场文书
企业仓管员岗位职责
2014/06/15 职场文书
2015年度党员个人总结
2015/02/14 职场文书
领导视察通讯稿
2015/07/18 职场文书
2015年十月一日放假通知
2015/08/18 职场文书
社区志愿者服务心得体会
2016/01/22 职场文书
《红领巾真好》教学反思
2016/02/16 职场文书
python实现自动清理文件夹旧文件
2021/05/10 Python
SQL Server数据库查询出现阻塞之性能调优
2022/04/10 SQL Server