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 ...
随机推荐
- UVa 1151 Buy or Build【最小生成树】
题意:给出n个点的坐标,现在需要让这n个点连通,可以直接在点与点之间连边,花费为两点之间欧几里得距离的平方,也可以选购套餐,套餐中所含的点是相互连通的 问最少的花费 首先想kruskal算法中,被加入 ...
- vue打包后js和css、图片不显示,引用的字体找不到问题
vue打包后js和css.图片不显示,引用的字体找不到问题:图片一般都是背景图片. 一.vue打包出现js和css不显示问题: 1.不使用mode:'history' 2.使用mode:'histor ...
- Highcharts 前端图表插件
Highcharts 支持将图片下载成各种格式 Highcharts官网:https://www.hcharts.cn/download <div id="container" ...
- 四舍五入VS银行家舍入法
在学习python的时候,遇见了一个颠覆了我传统观念的四舍五入. 看下面,round()的结果和我们以前根深蒂固的四舍五入是不同的. >>> round(0.5) 0 >> ...
- centeros 7配置mailx使用外部smtp服务器发送邮件
发送邮件的两种方式: 1.连接现成的smtp服务器去发送(此方法比较简单,直接利用现有的smtp服务器比如qq.新浪.网易等邮箱,只需要直接配置mail.rc文件即可实现) 2.自己搭建私有的smtp ...
- 【Appium】每次启动是提示安装setting和unlock app的解决办法
进入appium安装目录,C:\Program Files (x86)\Appium\node_modules\appium\lib\devices\android,编辑android.js文件,注释 ...
- MAC下搭建appium UI自动化环境
参考资料: http://qa.blog.163.com/blog/static/190147002201510161119832/ http://blog.csdn.net/liuchunming0 ...
- cmder-替代cmd
之所以选择cmder,说来话长,在学习python的过程中,由于经常通过pip命令安装包,并且在学习一些包的使用例如virtualenv,教程贴都是在终端下的命令,这使我对cmd的使用频率慢慢变多了起 ...
- 以替换为主的疯狂填词、sub()介绍
去年接到一个任务,一直给拖到了今天,再这么下去可不行,今天我就要让你们看看我的厉害 任务是这样的:创建一个程序,读入文本文件,并让用户在该文本出现ADJECTIVE .NOUN.ADVERB或VERB ...
- 【SRM 717 DIV2 C】DerangementsDiv2
Problem Statement You are given two ints: n and m. Let D be the number of permutations of the set {1 ...