lastIndex lastIndex 是正则表达式的一个可读可写的整数,它用于指定下一次匹配开始的索引位置,只有正则表达式使用了 "g"标志(全局匹配) 或者 "y" 标志(粘性匹配)时这个属性才会生效。 在每次使用正则进行匹配之后,lastIndex 这个值会自动设为下一次开始匹配的索引位置,但也可以手动设置这个值来指定下一次匹配开始的索引位置。 在每次开始匹配时,如果 lastIndex 等于或小于字符串的长度,则该正则表达式将会从lastIndex 位置开始…
lastIndex lastIndex 是正则表达式的一个可读可写的整数,它用于指定下一次匹配开始的索引位置,只有正则表达式使用了 "g"标志(全局匹配) 或者 "y" 标志(粘性匹配)时这个属性才会生效。 在每次使用正则进行匹配之后,lastIndex 这个值会自动设为下一次开始匹配的索引位置,但也可以手动设置这个值来指定下一次匹配开始的索引位置。 在每次开始匹配时,如果 lastIndex 等于或小于字符串的长度,则该正则表达式将会从lastIndex 位置开始…
在JavaScript中,与正则表达式有关的方法分别存在与RegExp类(构造函数)与String包装类中。 其中RegExp构造函数(类)中定义了exec、test、toString、[Symbol.match]、[Symbol.matchAll]、[Symbol.replace]、[Symbol.search]、[Symbol.split]这几个方法。 而String包装类中定义了match、matchAll、search、replace、replaceAll、split这6个方法。实际这些方法在以正则表达式作…
正则表达式的标志(flags)在字面量中以字母形式出现在正则表达式字面量的末尾,也就是双反斜杠之后的位置,使用RegExp构造函数创建时也可以通过传入第二参数进行指定。它们的作用是用于修改正则表达式的默认行为。 "g"(全局匹配)、"i"(不区分大小写匹配)、"m"(多行匹配)、"s"("."元字符匹配换行符)、"u"(Unicdoe匹配)、"y"(粘性匹配)、"d"(提供捕获组更多信息),这些标志可以单独使用,也可以组合使用,以满足特定的匹配需求。 "g"标志 "g"标志是表示使用全局匹配模式。默认情况下正则表达…
使用字面量创建正则表达式 通过双斜杠之间的内容来创建正则表达式,并在第二个斜杠后注释该表达式的标志(flags)。这种方式创建的正则表达式会在Javascript文件加载后,立马编译该正则表达式字面量,并在代码的常量声明处引用编译状态。 使用RegExp构造函数创建正则表达式 调用RegExp的构造函数,并通过两个参数(第二个参数可选)来实例化创建一个正则表达式。这种方式创建的正则表达式只会在代码执行到该处时才会进行正则表达式的编译。 也可以将正则表达式的字面量传入构造函数中。 还可以将一个正则表达式对象作为参数传…
正则表达式是用于匹配字符串的特殊字符组合,本篇文章将会详细介绍正则表达式的字符含义与使用方法。 边界匹配 边界是指用来表明匹配内容的起始或终止部分,而边界匹配就是通过标识起始或终止的部分进行匹配。 匹配字符串的开头:^ "^"用于匹配字符串的开头,如果使用多行模式匹配,每行的开头都将会被匹配中。 ”regexp“表达式使用gi模式(全局不区分大小写),用于匹配字符串时,将只会匹配字符串其实的数字”1“。而”regexp_m“表达式使用gim模式(全局不区分大小写多行)则会进行多行匹配。 注意,当“^”出现在中括号里…