今天在做正则循环匹配,碰到一个怪问题,第一次可以匹配上,但循环第一次之后,就无法匹配上了.猛然想起,RegExp中lastIndex属性,于是上网搜索了一下,将一些资料整理归纳,以备今后自己查阅(记性不好) 借鉴网上一个例子:http://www.dewen.org/q/468 <script type='text/javascript'> var reTest = /^aid=(.*)/ig; var aData = [ 'aid=^$', 'aid=^$', 'aid=^$', 'aid=…
ECMAScript5中的hasOwnProperty()方法,用于判断只在属性存在与对象实例中的时候,返回true,in操作符只要通过对象能访问到属性就返回true. 因此只要in操作符返回true而hasOwnProperty()返回false,就可以确定属性是原型中的属性. 所以有如下函数: function hasPrototypeProperty(obj, name) { return !obj.hasOwnProperty(name) && (name in obj); } 当…
实例的__dict__并不是一个方法,而是存储与该实例相关的实例属性的字典,对类中定义的方法(函数),方法名也是属性变量,类的__dict__存储所有实例共享的变量和函数(类属性,方法等),类的__dict__并不包含其父类的属性,每个实例的__dict__属性互不影响.例: class A(object): a = name = None def __init__(self,name): self.a = self.name = name obj = A('Tom') print (obj._…
js进阶正则表达式11RegExp的属性和方法(RegExp的属性和方法,就是RegExp对象.(点)什么的形式)(正则表达式执行之前会被编译) 一.总结 1. RegExp的属性和方法,就是RegExp对象.(点)什么的形式 2.正则表达式执行之前会被编译 二.js进阶正则表达式11RegExp的属性和方法 RegExp 对象属性 global RegExp 对象是否具有标志 g. 语法:RegExpObject.global 如果 g 标志被设置,则该属性为 true,否则为 false.…
JavaScript提供了一个RegExp对象来完成有关正则表达式的操作和功能,每一条正则表达式模式对应一个RegExp实例.有两种方式可以创建RegExp对象的实例. 使用RegExp的显式构造函数,语法为:new RegExp("pattern"[,"flags"]). ~~~构造函数 new RegExp(..) 使用RegExp的隐式构造函数,采用纯文本格式:/pattern/[flags]. ~~~正则字面量 pattern部分为要使用的正则表达式模式文本…
using System; using System.Data; using System.Reflection; namespace DBUtility { /// <summary> /// 对象实例操作辅助类 /// </summary> public static class InstanceHelper { /// <summary> /// 根据对象的属性名称,获取属性的值(用于根据对象自动完成参数化sql语句的赋值操作) /// </summary&…
@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); RegExp对象 本文参考MD…
正则表达式是一个描述字符模式的对象. JavaScript的RegExp对象和String对象定义了使用正则表达式来执行强大的模式匹配和文本检索与替换函数的方法. '*********************** ' javascript ' '*********************** 在JavaScript中,正则表达式是由一个RegExp对象表示的.当然,可以使用一个RegExp()构造函数来创建RegExp对象, 也可以用JavaScript 1.2中的新添加的一个特殊语法来创建Re…
JavaScript提供了一个RegExp对象来完毕有关正則表達式的操作和功能,每一条正則表達式模式相应一个RegExp实例.有两种方式能够创建RegExp对象的实例.      使用RegExp的显式构造函数,语法为:new RegExp("pattern"[,"flags"]).      使用RegExp的隐式构造函数,採用纯文本格式:/pattern/[flags]. pattern部分为要使用的正則表達式模式文本,是必须的.在第一种方式中,pattern部…
RegExp对象方法 exec():与String对象的match()方法功能相同. 参数为被搜索字符串.返回数组或null. test():与String对象的search()方法功能相同. 参数为被搜索字符串.返回true或false. RegExp对象实例属性 global:布尔值,表示正则表达式中后缀选项g是否被设置. ignoreCase:布尔值,表示正则表达式中后缀选项i是否被设置. lastIndex:一个整数值,表示下一次匹配开始的位置索引. multiline:布尔值,表示正则…
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/zkn_CS_DN_2013/article/details/24243159 RegExp对象的经常用法有test.exec和compile,本节介绍这些方法的功能和用法. 最后,对RegExp对象的属性和方法进行一个综合举例. 2.1  test方法 语法格式为test(str).该方法检查一个字符串中是否存在创建RegExp对象实例时所指定的表达式模式,假设存在就返回True,否则返回Fals…
首先大家看下下面的代码 var reg = /\d/; console.log( reg.test("1") ); console.log( reg.test("1") ); 输出都是true. 好的,接下来我们看这段代码 var reg = /\d/g; console.log( reg.test("1") ); console.log( reg.test("1") ); 一个true,一个false,这是什么情况? 正则对…
REGEXP对象 JavaScript通过内置对象RegExp支持正则表达式,有两种方法实例化RegExp对象. 1.字面量 2.构造函数 字面量 字面量是直接通过/.../创建RegExp对象实例. var reg = /\bis\b/ var text = 'He is a boy.' var result = text.replace(reg, 'IS') // 'He IS a boy.' 构造函数 构造函数版本看起来比较像Java中创建实例的样子,但是正如不推荐使用new Array而…
在Mybatis源码解析,一步一步从浅入深(二):按步骤解析源码中我们看到了XMLConfigBuilder(xml配置解析器)的实例化.而且这个实例化过程在文章:Mybatis源码解析,一步一步从浅入深(三):实例化xml配置解析器(XMLConfigBuilder)也进行了详细的阐述. 那么接下来就是解析configuration.xml并将configuration.xml中的配置信息加载到Configuration实例对象中去. 一,先来看看代码的位置 在文章:Mybatis源码解析,一…
最近一直在看JS高级程序设计这本书,有空来梳理一下几种创建对象的方式.话不多说,直接步入正题. 第一种:Object构造函数创建 var Person = new Object();Person.name = 'Nike';Person.age = 29; 这行代码创建了Object引用类型的一个新实例,然后把实例保存在变量Person中. 第二种:使用对象字面量表示法 var Person = {};//相当于var Person = new Object();var Person = { n…
为什么实例没有prototype属性?什么时候对象会有prototype属性呢? javascript loudou 1月12日提问 关注 9 关注 收藏 6 收藏,554 浏览 问题对人有帮助,内容完整,我也想知道答案0 问题没有实际价值,缺少关键内容,没有改进余地 function Foo() {} var foo = new Foo(); console.log(foo.prototype);// undefined console.log(foo.__proto__ === Foo.pr…
//测试RegExp对象的属性function testRegExpProperty(){ var regexp = /abc/; //regexp.ignoreCase = true; //无效 console.log(regexp.ignoreCase); console.log(regexp.global); console.log(regexp.multiline); console.log(regexp.source); //源文本 console.log('\n'); //源文本 /…
(一)  简单说明 字典是Python的内置数据结构,将数据与键关联(例如:姓名:张三,姓名是键,张三就是数据).例如:下面这个就是一个字典 {'姓名': '张三', '出生日期': '2899-08-12', '成绩': ['3.21', '3.10', '3.01']} 创建字典.添加数据.访问字典数据的方式如下: d = {}  #直接用{}创建字典 f = dict() #通过工厂函数dict()创建字典 #通过下面的方式添加数据 d['姓名'] = '张三' d['出生日期'] = '…
Ecmascript中,Object类型是所有它的实例的基础.换句话说,Object类型所具有的任何属性和方法也同样存在于更具体的对象中. Object的每个实例都具有以下属性和方法,这些都能方便于我们开发过程中对自己前面建立的对象进行判断. constructor——保存着用于创建当前对象的函数,即构造函数: hasOwnProperty(propertyName)——用于检查给定的属性在当前对象实例中(而不是在实例的原型中)是否存在,其中,propertyName必须是字符串形式: isPr…
㈠RegExp 对象 正则表达式是描述字符模式的对象. 正则表达式用于对字符串模式匹配及检索替换,是对字符串执行模式匹配的强大工具. ㈡语法 var patt=new RegExp(pattern,modifiers); 或者更简单的方式: var patt=/pattern/modifiers; ⑴pattern(模式) 描述了表达式的模式 ⑵modifiers(修饰符) 用于指定全局匹配.区分大小写的匹配和多行匹配 注意:当使用构造函数创造正则对象时,需要常规的字符转义规则(在前面加反斜杠…
一.什么是RegExp         1.RegExp 是正則表達式的缩写. 2.当您检索某个文本时,能够使用一种模式来描写叙述要检索的内容.RegExp 就是这样的模式. 3.简单的模式能够是一个单独的字符. 更复杂的模式包含了很多其它的字符,并可用于解析.格式检查.替换等等. 您能够规定字符串中的检索位置,以及要检索的字符类型,等等. 二.RegExp对象 1.说明                 RegExp 对象表示正則表達式,它是对字符串运行模式匹配的强大工具.用于规定在文本中检索的…
ECMAScript 通过 RegExp 类型来支持正则表达式.使用下面类似 Perl 的语法,就可以创建一个正则表达式 var expression = / pattern / flags ; 其中的模式(pattern)部分可以是任何简单或复杂的正则表达式,可以包含字符类.限定符.分组.向前查找以及反向引用.每个正则表达式都可带有一或多个标志(flags),用以标明正则表达式的行为.正则表达式的匹配模式支持下列 3 个标志.  g:表示全局(global)模式,即模式将被应用于所有字符串,…
1.定义 RegExp对象是原生JavaScript中表示正则表达式的对象:是正则表达式(regular expression)的简写.有一点需要明确知道,正则表达式只能对字符串进行操作. 2.语法 两种语法方式,一是新建RegExp对象,另一个直接创建 语法一:var patt=new RegExp(pattern,attributes); 语法二:var patt=/pattern/attributes; 示例: var re = new RegExp("\\w+"); var r…
目录 1. RegExp 1.1 表示格式: 1.2 匹配模式: 1.3 RegExp 实例属性 1.4 RegExp 实例方法 1.4.1 exec() 1.4.1.1 基本用法 1.4.1.2 exec() 和 \g 匹配模式 1.4.1.3 exec() 和 \y 黏着匹配模式 1.4.2 test() 1. RegExp ECMAScript 通过RegExp类型支持正则表达式. 1.1 表示格式: let expression = /pattern/flags; //or let ex…
$1...$9 属性 (RegExp) (JavaScript) 返回在模式匹配期间找到的,所存储的最近的九个部分.只读. 语法         RegExp.$n 参数     RegExp 始终为全局 RegExp 对象. n 1 至 9 之间的任意整数. 备注     每当产生一个带括号的成功匹配时,$1...$9 属性的值就被修改.可以在一个正则表达式模式中指定任意多个带括号的子匹配,但只能存储最新的九个. 下面的示例执行正则表达式搜索.它显示了全局 RegExp 对象中的匹配项和子匹配…
RegExp()构造函数带有两个字符串参数,其中第二个是可选的,如果提供第二个参数,它就指定正则表达式的修饰符.第一个函数包含正则表达式的主题部分,也就是正则表达式直接量中两条斜线之间的文本.无论是字符串直接量还是正则表达式,都使用\字符作为转义字符的前缀,因此当给RegExp()传入一个字符串表述的正则表达式时,必须将"\"替换为"\\". 执行匹配模式的方法exec(),它与match()相似,只是RegExp方法的参数是一个字符串,而String方法的参数是一…
正则表达式(RegExp对象)   1.正则表达式字面量,在脚本加载后编译.若你的正则表达式是常量,使用这种方式可以获得更好的性能,重复使用时不会重新编译: 2.使用构造函数创建的RegExp,提供了对正则表达式运行时的编译.主要用于当你知道正则表达式的模式会发生改变时,或者你事先并不了解它的模式或者是从其他地方(比如用户的输入),每次使用都会重新编译:         var myRe = /d(b+)d/g;         var myArray = myRe.exec("cdbbdbsb…
有这样一段代码: var newDateStr = " 11 13:48:18"; var reg = new RegExp("[0-9]+","g"); var ar = reg.exec(newDateStr); reg.lastIndex; ar.lastIndex; 假如你知道lastIndex是下一个匹配开始的索引,并且g是进行全局的匹配(否则只会匹配第一个符合正则规则的子串). 那么问题就来了,在IE5.0下面,ar.lastInde…
参考资料: 1. http://www.w3school.com.cn/js/js_obj_regexp.asp ☂ 知识点: ☞ RegExp是正则表达式的缩写. ☞ RegExp是一种模式,用于在检索文本时描述要检索的内容. ☞ RegExp对象用于存储检索的模式. ☞ 直接量语法: /pattern/attributes ☞ 创建RegExp对象的语法: new RegExp(pattern, attributes); 其中,pattern是一个字符串,指定了正则表达式的模式或其它正则表达…
RegExp对象是VBScript中用于提供简单地正则表达式支持的对象.VBScript中所有和正则表达式有关的属性和方法都有这个对象有关联. 一.RegExp对象的属性和方法(三个属性,三个方法) 属性: 1. Global属性: True or False, 指明模式是匹配整个字符串中所有与之相符的地方还是只匹配第一次出现的地方.默认值是False(表示只匹配第一次出现的地方). 2. IgnoreCase属性: True or False, 指明模式匹配是否大小写敏感.默认是False(表…