Es5正则
##JSON(ES5)
前端后台都能识别的数据。(一种数据储存格式)
XNL在JSON出来前
JSON不支持 undefinde和函数。
示列:let = '[{"useername":"zhangsan","password":"123"}]'
JSON保存为字符串,里头所有的引号都只能是双引号。
#JSON方法:
JSON.stringify(arr);↑转换为JSON,返回转移结果。
let arr = [{username:'zhangsan',password:'123'}];(JSON.parse(str)从JSON转换回来)
##正则
#1.正则表达式(正则对象):(RegExp):它是用来制定规则的,用来做验证,验证字符串的。
1.创建规则:(1)字面量:/规则/修饰符,规则写在//中间可加修饰符,let re /规则/修饰符。(2)构造函数:let re2 new RegExp(规则,修饰符)。
#验证
let str = '123';
1.test() rel.test(str);返回类型为bool值。2.exec(),console.log(exec(str));返回的不是bool值。
##规则:
1.定义规则:let re = /1a/;
#2.字符组:let re = /[abc][123]/;必须包含一个,组跟组是并列关系。
let re = /0-9/;匹配0-9之中的任意数字。
let re = /a-z[A-Z]/;
let re = /[a-zA-Z]/;([]用来分组);
#3.简写:
\w:等同于[0-9a-zA-Z];匹配任意数字字母下划线。
\W:等同于[^0-9a-zA-Z];匹配除了括号之内的东西。
\d:等同与[0-9]
\D:等同于[^0-9]除了0-9以外的东西。
\s:匹配空白的字符。
\S:匹配非空白字符。
.:匹配除了换行符,回车符....以外的任意字符。let re = /[\d\D]/;
#4.量词:
n{x}:匹配x个n,大括号之前的次是大括号内决定的。
n{x,y}:匹配x到y个n。
n{x,}:匹配至少x个n。
n?:等同于n{0,1}没有或一个。
n+:等同于n{1,}至少一个。
n*:等同于n{0,}任意,0或多个。
#5.特殊符号:
|:表示或 例如:let re = /a|b/;
\:转义符 例如:let re =/a\?/;
():用来划分整体 例如:let re = /(ab)|(cd)/;
^n:匹配以n开头。
n$:匹配以n结尾。
let re = /^|[358]\d{9}$/;
#6.修饰符:i g m
1.i:可以不区分大小写。例如:let re = /a/i; console.log(re.test("A"));
2.g:全局匹配。
3.m:换行匹配(必须搭配^$使用)。
Es5正则的更多相关文章
- ES6(四) --- 正则 Number Math
想学vue了 重启ES6的学习之路 在ES5 中正则的构造器 RegExp 不支持第二个参数 ES6 做了调整 第二个参数表示正则表达式的修饰符(flag) var regex = new ...
- ES5 对数组方法的扩展 以及 正则表达式
ES5 对数组的扩展 forEach map some every indexOf lastIndexOf forEach 与 map 语法: 数组.forEach(function ( v, i ) ...
- javascript的replace+正则 实现ES6的字符串模版
采用拼接字符串的形式,将 JSON 数据嵌入 HTML 中.开始时代码量较少,暂时还可以接受.但当页面结构复杂起来后,其弱点开始变得无法忍受起来: 书写不连贯.每写一个变量就要断一下,插入一个 + 和 ...
- ES6笔记-正则表达式和字符串正则方法
RegExp构造函数 在ES5中,RegExp构造函数的参数有两种情况. 第一种情况是,参数是字符串,这时第二个参数表示正则表达式的修饰符(flag). var regex = new RegExp( ...
- 关于JS正则——你知道多少?
正则表达式 1. 使用正则 创建正则表达式有两种方式,一种是以字面量方式创建,另一种是使用RegExp构造函数来创建. var expression = / pattern / flags; var ...
- ES6 正则的扩展
1. RegExp构造函数 ES5中,RegExp构造函数的参数: 参数是字符串,这时第二个参数表示正则表达式的修饰符(flag) 参数是一个正则表示式,这时会返回一个原有正则表达式的拷贝.但是,ES ...
- ES6(正则扩展)
ES6中正则的扩展 正则新增特性 一.构造函数的变化 1.ES5中new一个正则对象方法 (一行中2个参数,二行中1个参数) (第一行中的第一个参数必须是字符串) 2.ES6中新增一种方法(构造函数) ...
- 精读《正则 ES2018》
1. 引言 本周精读的文章是 regexp-features-regular-expressions. 这篇文章介绍了 ES2018 正则支持的几个重要特性: Lookbehind assertion ...
- es6 语法 (正则扩展)
{ //es5中 let regex = new RegExp('xyz', 'i'); let regex2 = new RegExp(/xyz/i); console.log(regex.test ...
随机推荐
- 链表python
无序链表.有序链表 有序列表排序通常是升序或降序,并且我们假设列表项具有已经定义的有意义的比较运算. 许多有序列表操作与无序列表的操作相同. 必须明确链表的第一项位置,一旦知道第一项. 链表实现的基本 ...
- NodeJS学习笔记 进阶 (6)本地调试远程服务器上的Node代码(ok)
https://github.com/chyingp/nodejs-learning-guide
- oracle 12c 关于wm_concat 的替换;LISTAGG
之所以用到了wm_concat函数.是想到达这样的结果集. 转为这样的===========> 返回这样的数据,易与配合echarts的数据准备. 看上去十分的方便,但是遗憾的是,oracle极 ...
- EventBus框架原理解析(结合源代码)(上)
上一篇文章http://blog.csdn.net/crazy__chen/article/details/47425779 和大家一起模仿EventBus的实现机制.和大家一起写出了一个简易的Eve ...
- 同一个事务里 查询 已删除可是未提交的数据[bug记录]
前几天犯了个低级错误.在一个事务方法里老是查询不到某条记录,可是debug卡住时,用db工具查.又能查出值. 经过一番折腾,原来是我在同一个事务里 查询 了已删除可是未提交的数据.当然查询不到了! . ...
- php实现模拟登陆
在不考虑验证码的情况一下,php实现模拟登陆,网上给的办法通常是採用curl来模拟实现,可是curl实现的是server端与server端建立了会话,仅仅能模拟登陆之后获取登陆之后的数据.无法将coo ...
- FPGA主要应用
FPGA主要应用: 1.逻辑控制(逻辑接口领域) 传统方向,主要用于通信设备的高速接口电路设计,用FPGA处理高速接口的协议,并完成高速的数据收发和交换.FPGA最初以及到目前最广的应用就是在通信领域 ...
- JNI学习积累之三 ---- 操作JNI函数以及复杂对象传递
本文原创,转载请注明出处:http://blog.csdn.NET/qinjuning 在掌握了JNI函数的使用和相关类型的映射后,以及知晓何利用javah工具生成对应的jni函数以及如何生成动态 链 ...
- BZOJ1901 ZOJ2112 线段树+treap (线段树套线段树)
BZOJ1901: 线段树套线段树做法: (外层线段树 里层动态开节点的权值线段树) 有一个小小的trick 可以省掉二分变成nlog^2n的 就是把查询的区间都取出来- logn个一起走- 2016 ...
- BZOJ 3211 线段树+并查集
思路: 我们很容易发现 一个数开根号 开几(很小)次 就到了1 1 再怎么开 都是1 由于这个性质 我们就可以用并查集 了 //By SiriusRen #include <cmath> ...