笔记007:对象——RegExp正则表达式对象
1、RegExp
- 一个用于匹配的模式文本
- 用0个或多个修饰符描述的匹配模式细节
RegExp对象的创建形式
- 用内建构造器创建 var re = new RegExp("j.*t")
- 用文本定义方式 var re = /j.*t/;
2、RegExp对象属性
- g==>global:相关搜索在找到第一个匹配位置时是否停止(false默认)
- i==>ignoreCase:是否忽略大小写 (false默认)
- m==>multiline:设置是否跨行搜索的选项,默认为false
- lastIndex:搜索开始的索引位置,默认为0
- source:用于存储正则表达式匹配模式的属性
- 除lastIndex外,对象创建之后就不能修改
var re = new RegExp('j.*t','gmi');
var re = /j.*t/ig;
2、RegExp对象的方法
- test() 返回一个布尔值,找到匹配内容时为true
- exec() 返回一个由匹配字符串组成的数组
/j.*t/.test("Javascript") ==>false
/j.*t/i.test("javascript") ==> true
/j.*t/i.exec("Javscript")[0] ==>"Javascript"
- match():返回一个包含匹配内容的数组
- search():返回第一个匹配内容所在的位置
- replace():将匹配的文本替换成指定的字符串
- split():将目标字符串分割成若干个数组元素
var s = new String("HelloJavaScriptWorld");
s.match(/a/) ; ==>["a"]
s.match(/a/g) ==>["a","a"]
s.replace(/[A-Z]/g,'') ==> "elloavacriptorld"
当匹配对象被找到时,使用$&表示匹配文本
s.replace(/[A-Z]/g,'_$&') ==> "_Hello_Java_Script_World" //匹配文本前加_
如果正则表达式中分了组(带括号),使用$1表示匹配分组的第一组,以此类推
s.replace(/([A-Z])/g,'_$1') ==> "_Hello_Java_Script_World" //匹配文本前加_
===================================================
回调式替换
var re = /(.*)@(.*)\.(.*)/;
var callback = function() {
return arguments[1] +'at'+ arguments[2] +'at' +arguments[3];
}
"mhf@czmec.com".replace(re, callback);
===========================================
使用正则表达式,用\s*匹配0个或多个空格
var csv='one, two , three , four';
csv.split(','); ==>['one',' two ',' three ',' four']
csv.split(/\s*,\s*/) ==>['one','two','three','four'] //去掉前后空格
- 用字符串代替过于简单的regexp对象
笔记007:对象——RegExp正则表达式对象的更多相关文章
- ECMAScript基本对象——RegExp 正则表达式对象
含义:定义字符串的组成规则 使用: 1.定义单个字符:[ ] [a] 表示有一个字符是 小写的a [ab] 表示有一个字符是 小写的a或者b [a-z] 表示有一个字符是 小写的a到z [a-z ...
- JavaScript RegExp(正则表达式) 对象
正则表达式是描述字符模式的对象.正则表达式用于在文本上执行模式匹配和“搜索和替换”功能. var patt = /JC2182/i 示例说明: /JC2182/i - 是一个正则表达式. JC2182 ...
- RegExp正则表达式对象
JavaScript的RegExp对象有两种创建方式,一种是字面量,一种是对象. var r = /pattern/attributes或者new RegExp(pattern, attributes ...
- javascript中的字符串对象和数组对象
1.javascript的对象的概念 在javascript中,除了null和undefined以处,其他的数据类型都被定义成了对象 也可以用创建对象的方法定义变量,string,math,array ...
- JavaScript对象、JSON对象、JSON字符串的区别
一.首先看下什么是JSON JSON:JavaScript Object Natation,JavaScript对象的表现形式,已经发展成一种轻量级的数据交换格式. JavaScript对象的表现形式 ...
- JavaScript学习笔记(十五)——对象之Date,RegExp
在学习廖雪峰前辈的JavaScript教程中,遇到了一些需要注意的点,因此作为学习笔记列出来,提醒自己注意! 如果大家有需要,欢迎访问前辈的博客https://www.liaoxuefeng.com/ ...
- JS RegExp对象(正则表达式)
笔记整理自:廖雪峰老师的JS教程 正则表达式语法:https://www.runoob.com/regexp/regexp-tutorial.html 目录 创建方式 方式一 方式二 简单使用 判断正 ...
- [转]RegExp 构造函数创建了一个正则表达式对象,用于将文本与一个模式匹配
本文转自:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/RegExp RegExp ...
- js进阶正则表达式实现过滤字符串(RegExp对象操作正则表达式)(正则:regular)(表达式:expression)
js进阶正则表达式实现过滤字符串(RegExp对象操作正则表达式)(正则:regular)(表达式:expression) 一.总结 1.str_replace:正则作用:高效快速匹配 2.break ...
随机推荐
- 使用智能指针来管理对象 (基于RAII)
////一个简单的防止内存泄露的例子//void test() { //使用RAII的特性管理资源 //当智能指针unique_ptr被销毁时,它指向的对象也将被销毁 //这里test函数返回后 p将 ...
- [转]CAP原理与最终一致性 强一致性 透析
在足球比赛里,一个球员在一场比赛中进三个球,称之为帽子戏法(Hat-trick).在分布式数据系统中,也有一个帽子原理(CAP Theorem),不过此帽子非彼帽子.CAP原理中,有三个要素: 一致性 ...
- [转]Dynamic SQL & Stored Procedure Usage in T-SQL
转自:http://www.sqlusa.com/bestpractices/training/scripts/dynamicsql/ Dynamic SQL & Stored Procedu ...
- PHP表单数据验证
背景: 在上次项目的时候,一直不明白为什么要对数据验证,我能保证我每次请求的数据都是合法的,但是在后面的时候,原来“用户”并不是那样听话,他总是要给我们找麻烦,然后可能让我们的服务器崩掉.但是只对单个 ...
- RIO-SEIO水泵流量表
http://rio-seio.com/TW/products_pumps/Rio_plus.html 流量表:
- ASP.net 中手工调用WS(POST方式)
ASP.net 中手工调用WS(POST方式)核心代码:string strUrl="http://localhost:21695/service1.asmx/getmythmod" ...
- 开发android App干坏事(一)
最近都是在搞java,android的知识,前两天生日朋友和我聊到,有一个认识的人通过反编译android程序往里面插入广告积分墙赚了很大一笔钱,很短时间内赚了几十万,(为毛感觉这已经是扯淡篇了,转入 ...
- Ninject之旅之十一:Ninject动态工厂(附程序下载)
摘要 如果我们已经知道了一个类所有的依赖项,在我们只需要依赖项的一个实例的场景中,在类的构造函数中引入一系列的依赖项是容易的.但是有些情况,我们需要在一个类里创建依赖项的多个实例,这时候Ninject ...
- C语言运算符优先级和口诀(转)
一共有十五个优先级: 1 () [] . -> 2 ! ~ -(负号) ++ -- &(取变量地址)* (type)(强制类型) sizeof 3 ...
- 移动端touch事件影响click事件以及在touchmove添加preventDefault导致页面无法滚动的解决方法
这两天自己在写一个手机网页,用到了触屏滑动的特效,就是往右滑动的时候左侧隐藏的菜单从左边划出来. 做完之后在手机原生浏览器中运行正常,但在QQ和微信中打开,发现touchmove只会触发一次,而且to ...