[ JS 进阶 ] test, exec, match, replace】的更多相关文章

https://segmentfault.com/a/1190000003497780 对了,这篇文章可能会涉及到正则表达式相关知识,所以推荐没有正则基础的去看看这篇入门文章:正则表达式30分钟入门教程,很经典的文章,反正我的正则就是从这里学的,^▽^ . 用法介绍 注:pattern 为RegExp的实例, str 为String的实例 用法 说明 返回值 pattern.test(str) 判断str是否包含匹配结果 包含返回true,不包含返回false. pattern.exec(str…
实战,参数可以对照上面的,代码一定要敲 var str = 'abc123cba456aaa789'; var reg = /\d+/g; console.log(reg.test(str)) //str满足匹配表达式返回true str2 = 'asdsadasd' console.log(reg.test(str2)) //str2不满足匹配表达式返回flase console.log(reg.exec(str)) //返回数组['123','input':'abc123cba456aaa7…
这四种方法都是用来检测字符串是否包含某一子串或是否匹配否个正则表达式 test方法,匹配返回true,不匹配返回false match,匹配返回匹配到的数组(包含多次/g),匹配一次返回包含匹配子串的数组,具体看下面例子,没有匹配到返回null replace,查找替换,两个参数,第一个参数查找的内容,可以是字符串或正则表达式,第二个参数(字符串,$1...$10,函数),用第二个参数替换第一个参数 exec,匹配返回匹配值,不匹配返回null var str='aa-bb-cc' var re…
js进阶js中支持正则的四个常用字符串函数(search march replace split) 一.总结 代码中详细四个函数的用法 search march replace split 二.js进阶js中支持正则的四个常用字符串函数 正则表达式 RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具. 正则表达式简洁且功能强大,通常用来匹配字符串,比如在表单验证中检验用户输入是否合法.它并不仅仅在JavaScript中可以使用,众多的高级编程语言都支持正则表达式. 接下来我们通…
js进阶正则表达式13RegExp对象方法(RegExp对象的方法:compile,test,exec)(子表达式 var reg1=/([a-z]+)\d/) 一.总结 1.RegExp对象有三个方法:compile(编译正则表达式),test(检索字符串中指定的值),exec(检索字符串中指定的值)(和string对象的match有点类似) . 2.子表达式:分组的表达式,也就是小括号括起来的表达式,var reg1=/([a-z]+)\d/ 其中([a-z]+)就是字表达式 二.js进阶正…
js正则表达式中test,exec,match方法的区别说明 test test 返回 Boolean,查找对应的字符串中是否存在模式.var str = "1a1b1c";var reg = new RegExp("1.", "");alert(reg.test(str)); // true exec exec 查找并返回当前的匹配结果,并以数组的形式返回.var str = "1a1b1c";var reg = new R…
js进阶正则表达式10-分组-多行匹配-正则对象的属性(小括号作用:分组,将小括号里面的东西看成一个整体,因为量词只对前一个字符有效)(多行匹配:m)(属性使用:reg.global) 一.总结 1.小括号作用:分组,将小括号里面的东西看成一个整体,因为量词只对前一个字符有效 var reg2=/(td){2,4}/g //1.小括号作用,分组 2.var reg3=/^\d/gm //2.m多行匹配 var str2='1.第一章\n2.第二章\n3.第三章' //4.换行符 3.alert(…
js进阶正则表达式5几个小实例(原样匹配的字符在正则中原样输出)(取反^) 一.总结 原样匹配的字符在正则中原样输出:var reg4=/第[1-2][0-9]章/g //10-29 取反^:var reg1=/[^0-9]/g 二.js进阶正则表达式5几个小实例 <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8"> <title>…
js进阶正则表达式修饰符(i.g.m)(var reg2=/html/gi) 一.总结 1.正则表达式使用:通过那些支持正则表达式的字符串函数来使用(search.match.replace.split) 2.正则表达式修饰符:i和g和m  global ignoreCase multiline 3.两种使用方式: var reg1=new RegExp('a','g'); var reg2=/a/g; 4.修饰符使用:var reg2=/html/gi //g执行全局匹配 5.正则表达式使用:…
js进阶正则表达式11RegExp的属性和方法(RegExp的属性和方法,就是RegExp对象.(点)什么的形式)(正则表达式执行之前会被编译) 一.总结 1. RegExp的属性和方法,就是RegExp对象.(点)什么的形式 2.正则表达式执行之前会被编译 二.js进阶正则表达式11RegExp的属性和方法 RegExp 对象属性 global RegExp 对象是否具有标志 g. 语法:RegExpObject.global 如果 g 标志被设置,则该属性为 true,否则为 false.…
代码地址如下:http://www.demodashi.com/demo/12932.html 一.简介     koa是由Express原班人马打造的,致力于成为一个更小.更富有表现力.更健壮的Web框架,Koa不定制路由,无冗余的中间件,开发设计方案趋向定制化,所以很适合对业务和技术有灵活要求的web场景. 二.应用     由于restful.加解密.跨域.参数解析.中间件等比较基础,且文档丰富,本小节将直接跳过,侧重于分享以下几点: 1.路由转发时,如何利用钩子函数机制做到control…
js进阶正则表达式方括号(方括号作用)(js正则是在双正斜杠之中:/[a-z]/g) 一.总结 方括号:范围 圆括号:选 大括号:数量 1.js正则是在双正斜杠之中: var reg2=/[a-z]/g 2.字符串点replace: str2.replace(reg,'') 二.js进阶正则表达式方括号 方括号用于查找某个范围内的字符: 表达式 描述 [abc] 查找方括号之间的任何字符. [^abc] 查找任何不在方括号之间的字符. [0-9] 查找任何从 0 至 9 的数字. [a-z] 查…
js进阶正则表达式实现过滤字符串(RegExp对象操作正则表达式)(正则:regular)(表达式:expression) 一.总结 1.str_replace:正则作用:高效快速匹配 2.break关键字 3.RegExp对象操作正则表达式 (正则:regular) ['regjʊlə] (表达式:expression) [ɪkˈspreʃn] 二.js进阶正则表达式实现过滤字符串 <!DOCTYPE html> <html lang="zh-cn"> <…
js进阶正则表达式9量词2(^和&作用:/^HTML5$/g匹配不到aHTML5b中的HTML5,不然是可以匹配到的)(/\d+(?=cm)/g)((?!cm)) 一.总结 ^和&作用:/^HTML5$/g匹配不到aHTML5b中的HTML5,不然是可以匹配到的 var reg1=/^HTML5$/g //1.以H开头以5结尾的字符串 var reg2=/\d+(?=cm)/g //2.后面接cm的 var reg3=/\d{3,}(?!cm)/g //3.后面不接cm的 二.js进阶正则…
js进阶正则表达式8量词(+*?{}的意义用法)(量词的对象是前面一个字符) 一.总结 1.量词的对象是前面一个字符 量词 描述 n+ 匹配任何包含至少一个 n 的字符串. n* 匹配任何包含零个或多个 n 的字符串. n? 匹配任何包含零个或一个 n 的字符串. n{X} 匹配包含 X 个 n 的序列的字符串. 2.使用:var reg4=/Go*d/g; 3.大括号表示量词:var reg7=/\d{2}/g; 二.js进阶正则表达式8量词 量词 量词 描述 n+ 匹配任何包含至少一个 n…
js进阶正则表达式7点数字字母空格(w d s)(小写表原意,大写表反义)(特殊字符要加反斜杠:var reg22=/\W/g) 一.总结 1.w d s,word digital space 2.特殊字符要加反斜杠:var reg22=/\W/g 3.str.函数的形式:str12.match(reg1) 4.小写表原意,大写表反义 二.js进阶正则表达式7点数字字母空格 元字符 描述 . 查找单个字符,除了换行和行结束符. \w 查找单词字符(包括英文字母,数字,下划线). \W 查找非单词…
js进阶正则表达式6转义字符(加\转义)(.符号)(|符号) 一.总结 转义字符:{} () / $ # & * . ....... //3.特殊字符,都要加转义\ 点符号:var reg2=/img\.jpg/g //转义字符 \n //2..啊+号a是特殊字符,原意匹配要加\转义 |符号:var reg1=/javascript|php|java/g //1.|表或者 二.js进阶正则表达式6转义字符 <!DOCTYPE html> <html lang="zh-c…
一,css进阶篇: 等css哪些事儿看了两三遍之后,需要对看过的知识综合应用,这时候需要大量的实践经验, 简单的想法:把qq首页全屏另存为jpg然后通过ps工具切图结合css转换成html,有无从下手的地方可以用firebug, chrome调试工具分析网站结构样式.如果技术熟练自信可以自己先写,写完之后在对比,以其来找寻自己的差距.结构是网站的骨架,如果写的不合理,将是bug产生的重要根源,所以学习分析大型网站的布局样式对初学者来说帮助是很大的.大多数初学者由于对技术的不自信,html结构往往…
进阶系列的文章从去年10月开始写的,晃眼又是4个多月了,想在年前总结一下. 首先恭祝大家新年快乐.今年是羊年吧.前段时间和朋友聊天,聊到十二生肖里为什么没猫,我张口就道:不是因为十二生肖开会的时候猫迟到了吗? 呵呵,不知道这是谁给我灌输的观点.o(>﹏<)o 进阶系列的文章分为两部分,文章前括号里写有: [D3.js 进阶系列] [D3.js 选择集与数据详解] 虽然称之为"进阶",但并不是说一定要看完"入门"才能看.由于本人能力有限,不能很好地整理成由…
一,css进阶篇: 等css哪些事儿看了两三遍之后,需要对看过的知识综合应用,这时候需要大量的实践 经验, 简单的想法:把qq首页全屏另存为jpg然后通过ps工具切图结合css转换成html,有无 从下手的地方可以用firebug, chrome调试工具分析网站结构样式.如果技术熟练自信 可以自己先写,写完之后在对比,以其来找寻自己的差距.结构是网站的骨架,如果 写的不合理,将是bug产生的重要根源,所以学习分析大型网站的布局样式对初学者 来说帮助是很大的.大多数初学者由于对技术的不自信,htm…
<script> //JS实现VBS当中的Replace,替换全部.方法名大写,区别于原方法,与VBS相类似. String.prototype.Replace = function(oldValue,newValue,isIgnore) { var reg = new RegExp(oldValue,(isIgnore ? 'i' : '') + "g"); return this.replace(reg, newValue); } </script> 调用方…
将会学习到一些原理相关的知识,不会解释涉及到的知识点的作用及用法,如果大家对于这些内容还不怎么熟悉,推荐先去学习相关的知识点内容再来学习原理知识. 手写 call.apply 及 bind 函数 涉及面试题:call.apply 及 bind 函数内部实现是怎么样的? 首先从以下几点来考虑如何实现这几个函数 不传入第一个参数,那么上下文默认为 window 改变了 this 指向,让新的对象可以执行该函数,并能接受参数 那么我们先来实现 call Function.prototype.myCal…
js进阶---12-11.jquery如何给动态创建出来的元素绑定事件 一.总结 一句话总结:通过事件委托的方式,通过on方法 1.on方法在事件绑定的时候,data方式带额外参数时,字符串参数和其它参数的使用不一样,为什么? 因为字符串参数默认会被当成动态生成元素的事件绑定方法,所以需要在前面添加参数null. 64 $('#btn1').on('click',null,'div',function(e){ 65 alert('事件绑定'+e.data) 66 }) 对比一下额外参数的json…
js进阶---12-12.jquery事件委托怎么使用 一.总结 一句话总结:通过on方法(事件委托),给要绑定事件的元素的祖先绑定事件,从而达到效果. 1.事件委托是什么? 通过事件冒泡,让子元素绑定的事件冒泡到父元素(或祖先元素)上,然后再进行处理. //使用事件委托,只在table上绑定一次事件 //可以动态绑定事件 $('table').on('click','td',function(){ //$(this).css('background','orange') alert('clic…
js进阶---12-10.jquery绑定事件和解绑事件是什么 一.总结 一句话总结:on和off. 1.jquery如何给元素绑定事件? on方法 22 $('#btn1').on('click',function(){ 23 alert('事件绑定') 24 }) 2.如何给元素绑定多个事件(两种方法)? json对象on方法直接添加多个 22 $('#btn1').on('click',function(){ 23 alert('事件绑定') 24 }) 25 //绑定多个事件 26 $(…
转自:http://www.ourd3js.com/wordpress/?p=660 [ D3.js 进阶系列 — 4.0 ] 绘制箭头 发表于2014/12/08 在 SVG 绘制区域中作图,在绘制直线和曲线时,常需要在某处添加箭头.本文介绍如何在 D3 中给直线和曲线添加箭头. 到目前为止,我们绘制 D3 的图表都是在 SVG 绘制区域内,虽然 D3 也可用 Canvas 或 WebGL 等作图,但 SVG 是最常用的.那么,用 D3 来绘制箭头,先要明白在 SVG 中是怎么绘制的. 1.…
js进阶 14 jquery的ajax有哪些函数和事件(多练) 一.总结 一句话总结:常用:load.ajax.post.get.getScript().getJSON().表单序列化,ajax事件这8个板块. 二.jquery的ajax有哪些函数和事件 JAX是与服务器交换数据的艺术,它在不重载全部页面的情况下,实现了对部分网页的更新.如果没有jQuery,AJAX编程还是有些难度的.通过jQuery AJAX方法,能够使用HTTP Get和HTTP Post 从远程服务器上请求文本.HTML…
js进阶 14-9 ajax事件有哪些 一.总结 一句话总结:ajax开始时事件.发送时事件,请求完成时事件,请求成功时事件,请求结束时事件,请求错误时事件事件. 1.ajax事件的监听对象是谁? 都是document对象 21 $(document).ajaxStart(function(){ 22 alert('ajaxStart() AJAX 请求开始时执行函数') 23 }) 24 $(document).ajaxComplete(function(){ 25 alert('ajaxCo…
js进阶 14-8 表单序列化函数serializeArray()和serialize()的区别是什么 一.总结 一句话总结:两者都是对表单进行序列化,serializeArray()返回的是json对象,serialize()返回的是json形式的字符串,使用起来都是一样的 1.$(selector).serialize()序列化的话对中文做了什么操作? 为了避免出错,将中文变成了编码,因为内容要提交到服务器,编码可以保证汉字不出错,github上传文件的时候,也是进行的同样的操作…
js进阶 14-7 jquery的ajax部分为什么需要对表单进行序列化 一.总结 一句话总结:如果用ajax传递表单的数据,如果不进行表单的序列化,要一个参数一个参数的写,太麻烦,序列化的话,一句代码搞定.data:$('form').serialize(),这样一句话解决复杂的表单ajax的post传值过程. 1.表单序列化函数是什么? $(selector).serialize()和serializeArray() 24 <script> 25 $(function(){ 26 $('f…