首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JavaScript 正则表达式全面总结

字符类 如果不想匹配某一个特定字符而是想匹配某一类字符,则需要使用字符类。 通过将直接量字符放入方括号内,可以组成字符类(character class)。...一个字符类可以匹配它所包含任意 一个 字符。如 [abc] 可以匹配 a,b,c 中任意一个字符。 使用 ^ 作为方括号中第一个字符来定义否定字符集,它匹配所有不包含在方框括号内的字符。...一些常用的字符类,在 JavaScript 中有特殊的转义字符来表达它们。 字符 匹配 [...] 方括号内任意字符 [^...] 不在方括号内任意字符 ....\n 表示第 n 个带圆括号的子表达式。表示引用前一个表达式所匹配的文本。因为子表达式可以嵌套,所以根据子表达式左括号的位置进行计数。...没有匹配子串返回 -1 。 如果参数不是正则表达式,将会通过 RegExp 构造函数转换成正则表达式。它会忽略正则的修饰符 g。

85640

浅析JavaScript正则表达式

;;//匹配以ccy结尾的字符串; 2.直接量字符   正则表达式中的所有字母和数字都是按照字面含义进行匹配的。...3.字符匹配 字符 匹配 [...] 方括号内的任意字符 [^...] 不在方括号内的任意字符 ....1个空格加javascript加至少1个空格加0个或多个左反圆括号字符 ?...只组合,把项组合到一个单元,但不记忆与改组相匹配字符 \n 和第n个分组第一次匹配字符匹配,组是圆括号中的子表达式(也可能是嵌套的),组索引是从左到右的左括号数,(?...注:如果左边的选择项匹配就会忽略右边的匹配项,即使它产生更好的匹配 2.组合引用 正则表达式中的圆括号 () 有多中作用: a.一个是把单独的项组合成子表达式; b.一个是在完整的模式中定义子模式; c

1.5K30
您找到你想要的搜索结果了吗?
是的
没有找到

正则表达式大全

,这些类匹配的是除那些包含在中括号之内的字符外的所有字符.定义否定字符尖时,要将一个 ^ 符号作为从左中括号算起的第 一个字符.正则表达式的集合是 / [a-zA-z0-9] / ..... \3 引用的是第三个代括号的子表达式.注意,由于子表达式可以嵌套在其它子表达式中, 所以它的位置是被计数的左括号的位置....和|等符号使用,而且还可以记住和这个组匹配字符以供此后引 用使用 \n 和第n个分组所匹配字符匹配.分组是括号中的子表达式(可能是嵌套的).分组号是从左到右计数的左括号数 ________...你可以使用RegExp.input 访问该 属性。 能加上圆括号的子串的数量不受限制,但正则表达式对象只能保留最后9 条。如果你要访问所有的 圆括号内的匹配字串,你可以使用返回的数组。...flags 如果指定的话,可以是下面其中的一个: "g": 匹配所有可能的字串 "i": 忽略大小写 "gi": 匹配所有可能的字串及忽略大小写 描述: 使用compile方法来编译一个正则表达式

4.6K20

JavaScript(RegExp正则匹配)

前言 正则表达式是一个描述字符模式的对象。JavaScriptRegExp对象和String对象定义了使用正则表达式来执行强大的模式匹配和文本检索与替换函数的方法。...在JavaScript中,正则表达式是由一个RegExp对象表示的.当然,可以使用一个RegExp()构造函数来创建RegExp对象, 也可以用JavaScript 1.2中的新添加的一个特殊语法来创建.../s$/; 这行代码创建一个新的RegExp对象,并将它赋给变量parttern.这个特殊的RegExp对象和所有以字母"s"结尾的字符串都匹配.用RegExp()也可以定义 一个等价的正则表达式,代码如下...另外还可以定义否定字符类,这些类匹配的是除那些包含在中括号之内的字符外的所有字符.定义否定字符尖时,要将一个 ^ 符号作为从左中括号算起的第一个字符.   .... \3 引用的是第三个代括号的子表达式.注意,由于子表达式可以嵌套在其它子表达式中,所以它的位置是被计数的左括号的位置.

4.2K50

javascript正则表达式RegExp再次研究-replace

m(只读) lastIndex 如果使用了全局模式,这个变量保存的是在字符串中尝试下次的匹配的偏移值,在test()和exec()中会用到这个值(可写) source 返回创建RegExp对象实例时指定的表达式文本字符串...如果它是字符串,那么每个匹配都将由字符串替换。但是 replacement 中的 $ 字符具有特定的含义。如下表所示,它说明从模式匹配得到的字符串将用于替换。...返回一个新的字符串,是用 参数2 替换了 参数1 的第一次匹配所有匹配之后得到的。 $1、$2、...、$99 与 regexp 中的第 1 到第 99 个子表达式相匹配的文本。...moshanghan是我 replace例四:忽略大小写,全局匹配 var cStr ="我是 Moshanghan!...嵌套分组的捕获 如果碰到类似/((我) 就 (是 (陌上寒)))/的嵌套分组,捕获的顺序是什么?

81620

js正则表达式转义字符-【JavaScript正则表达式RegExp

例如,\d+ 会消耗所有可能的字符。当无法消耗更多(在尾端没有更多的数字或字符串)时,然后它再匹配模式的剩余部分。如果没有匹配,则减少重复的次数(回溯),并再次尝试。   ...它允许将匹配的一部分作为结果数组中的单独项。如果我们将量词放在括号后,则它将括号视为一个整体。   嵌套组:括号可以嵌套。在这种情况下,编号也从左到右。   ...替换中的捕获组:用到字符串的方法   让我们能够替换 str 中 regexp所有匹配项的方法 str.(regexp, ) 允许我们在 字符串中使用括号中的内容。...=.*30)/) ); // 1 可以嵌套连续判定 成功继续判断 全部满足则匹配   2、否定的前瞻语法:   假设我们想要一个数量,而不是来自同一字符串的价格。...也就是说,它只允许匹配前面有特定字符串的模式。

2.1K20

一文学会JavaScript中的正则表达式

正则表达式 正则表达式是用于匹配字符字符组合的模式,在JavaScript中,正则表达式也是对象。...此外,正则表达式还常用于过滤掉页面内容中的一些敏感词(替换),或从字符串中获取我们想要的特定部分(提取)等 。...所有可供选择的字符都放在方括号内。 [] 方括号 /[abc]/.test('andy') // true 后面的字符串只要包含 abc 中任意一个字符,都返回 true 。...\W 除所有字母、数字和下划线以外的字符,相当于[^A-Za-z0-9_] \s 匹配空格(包括换行符、制表符、空格符等),相当于[\t\r\n\v\f] \S 匹配非空格的字符...有三种值: g:全局匹配 i:忽略大小写 gi:全局匹配 + 忽略大小写 案例:敏感词过滤 图片 <textarea name="" id="message" cols="30" rows="10

32320

JavaScript——正则表达式

正则表达式 正则表达式是用于匹配字符字符组合的模式,在JavaScript中,正则表达式也是对象。...此外,正则表达式还常用于过滤掉页面内容中的一些敏感词(替换),或从字符串中获取我们想要的特定部分(提取)等 。...所有可供选择的字符都放在方括号内。 [] 方括号 /[abc]/.test('andy') // true 后面的字符串只要包含 abc 中任意一个字符,都返回 true 。...预定类 说明 \d 匹配0-9之间的任一数字,相当于 [0-9] \D 匹配所有0-9以外的字符,相当于 [^0-9] \w 匹配任意的字母、数字和下划线,相当于 [A-Za-z0-9_] \W 除所有字母...有三种值: g:全局匹配 i:忽略大小写 gi:全局匹配 + 忽略大小写 案例:敏感词过滤 </

40910

JavaScript——正则表达式

正则表达式 正则表达式是用于匹配字符字符组合的模式,在JavaScript中,正则表达式也是对象。...所有可供选择的字符都放在方括号内。 [] 方括号 /[abc]/.test('andy') // true 后面的字符串只要包含 abc 中任意一个字符,都返回 true 。...预定类 说明 \d 匹配0-9之间的任一数字,相当于 [0-9] \D 匹配所有0-9以外的字符,相当于 2 \w 匹配任意的字母、数字和下划线,相当于 [A-Za-z0-9_]...\W 除所有字母、数字和下划线以外的字符,相当于 3 \s 匹配空格(包括换行符、制表符、空格符等),相当于 [\t\r\n\v\f] \S 匹配非空格的字符,相当于 4 正则表达式的替换...有三种值: g:全局匹配 i:忽略大小写 gi:全局匹配 + 忽略大小写 案例:敏感词过滤 替换 替换 提交 var

1.3K30

JavaScript正则表达式:RegExp对象的详细介绍与使用

前言正则表达式是一种描述文本模式的语言,可以用来匹配、查找、替换和验证文本。在JavaScript中,RegExp对象是用来处理正则表达式的工具。...JavaScript中,RegExp对象支持三种修饰符:g、i和m。1. g修饰符g修饰符用于全局匹配,即在整个字符串中查找所有匹配项。...四、RegExp对象的元字符在正则表达式中,元字符是用来表示特定含义的字符JavaScript中,RegExp对象支持许多元字符,下面将介绍一些常用的元字符。1. ..表示任意一个字符,除了换行符。...表示匹配前面的字符b零次或一次。7. [][]表示匹配括号中的任意一个字符。...^^表示匹配不在方括号中的任意一个字符

22012

正则表达式之javascript

1.正则表达式的定义 描述字符模式的对象,JavaScript的RepExp类表示正则表达式 var pattern = new RegExp("s$"); var pattern = /s$...方括号内的任意字符 [^...] 不在方括号内的任意字符 ..../ //匹配3个单词加一个可选数字 /\s+java\s+/ //匹配java单词前后至少一个空格 /[^(]*/ //匹配以一个或者多个左括号开始的字符 5.非贪婪 重复为尽可能的多匹配,非贪婪模式是尽可能的少匹配...只组合,把项组合到一个单元,但不记忆与改组相匹配字符 \n 和第n个分组第一次匹配字符匹配,组是圆括号中的子表达式(也可能是嵌套的),组索引是从左到右的左括号数,(?...=p) 零宽负向先行断言,要求接下来的字符都不与p匹配 8.修饰符 i 不区分大小写 g 全局匹配 m 多行匹配模式 9.用于模式匹配的String方法 search() “javascript

77430

JavaScript基础之七——JavaScript中的正则表达式

i代表忽略大小写,g代表全局检索,m代表多行检索。 同样,使用RegExp对象的构造方法来构造正则对象也需要两个参数,第1个参数为正则表达式,第2个参数为修饰参数。    ...正则表达式可以使用括号来进行范围查找,示例如下: //i 表示忽略大小写 g表示全局搜索 m表示多行搜索 var reg2 = new RegExp("ello","igm"); console.log..."); console.log(string.match(reg3)); //前面加上^表示取反 匹配除了[]内的所有其他字符 var reg4 = new RegExp("[^abcd]","g");...(reg5)); //进行范围匹配 如下只匹配英文字符 var reg6 = new RegExp("[a-z]","ig"); console.log(string.match(reg6)); //进行指定串的匹配...匹配0个或1个x字符 var reg11 = new RegExp('He?'

31110

JavaScript中的正则表达式

括号内的任意字符 [^...] 不在方括号内的任意字符 ....(查找所有匹配而不是在匹配到第一个就停止) m 执行多行匹配 console.log(/JAVA/i.test('java'));//true 支持正则的String对象方法 search(): 用于检索字符串中指定的子字符串...()方法不支持全局检索,因为他会忽略正则表达式参数中的修饰符g replace(): 用于检索与替换操作,接收两个参数,第一个是正则表达式,第二个是要进行替换的字符串,该方法可以全局匹配 console.log...,参数必须是正则表达式,返回一个由匹配结果组成的数组 在match方法中如果正则表达式设置修饰符g,则返回的数组是字符串中所有匹配的结果 console.log('JAVA is not JAVAscript...,包含表达式的文本 RegExp对象的方法 exec(): 用于检索字符串中正则表达式的匹配,如果有匹配则返回该匹配的值,否则返回null console.log(/java/i.exec('javaScript

52120

玩转JavaScript正则表达式

创建方式 在JavaScript中,我们可以通过RegExp()构造函数或者RegExp直接量两种方式去创建正则表达式。...var pattern1 = /s$/; var pattern2 = new RegExp('s$'); 上面代码中的pattern1和pattern2是等价的,都是用来匹配所有以字母s结尾的字符串。...字符字符 匹配 [...] 方括号内任意字符 [^...] 不在方括号内的任意字符 ....只组合,把项组合到一个单元,但不记忆与该组相匹配字符 \n 和第n个分组第一次匹配字符匹配,组是圆括号中的子表达式(也有可能是嵌套),组索引是从左到右的左括号数,“(?...设置g则返回所有匹配结果,否则数组的第一个元素是匹配字符串,剩下的是圆括号中的子表达式,即a[n]中存放的是$n的内容。 String.split() 参数:正则表达式或字符串。

1.4K50

玩转 JavaScript 正则表达式

创建方式 在JavaScript中,我们可以通过RegExp()构造函数或者RegExp直接量两种方式去创建正则表达式。...var pattern1 = /s$/; var pattern2 = new RegExp('s$'); 上面代码中的pattern1和pattern2是等价的,都是用来匹配所有以字母s结尾的字符串...字符字符 匹配 [...] 方括号内任意字符 [^...] 不在方括号内的任意字符 ....只组合,把项组合到一个单元,但不记忆与该组相匹配字符 \n 和第n个分组第一次匹配字符匹配,组是圆括号中的子表达式(也有可能是嵌套),组索引是从左到右的左括号数,“(?...设置g则返回所有匹配结果,否则数组的第一个元素是匹配字符串,剩下的是圆括号中的子表达式,即a[n]中存放的是$n的内容。 String.split() 参数:正则表达式或字符串。

4.2K00

js中的正则表达式(1)

myName驼峰式命名 一份计算机文件系统中所有文件的清单,想要把文件名里包含fileName的文件列举出来 想要在文件里搜索某个特定的文本,但是你只想要把出现在特定位置的字符(比如每行的开头或是每条语句的结尾...string方法,返回pattern中的子串或者null 注意:使用match()的位置,前面是待要匹配的对象,而圆括号内是正则表达式 当匹配对时,结果返回待匹配特定字符的子串,该方法类似于 indexOf...开始位置 注意:search方法查找到即返回,会忽略g修饰符全局匹配,同时它也没有RegExp对象的lastIndex的属性,且总是从字符串开始位置进行查找,总是返回的是str匹配的第一个位置查到并返回第一个...,在 str中查找与RegExp(pattern)相匹配的子字符串,第二个参数值或者功能函数执行结果来替换这些子串,如果RegExp(pattern)具有全局标志g,那么replace()方法将替换所有匹配的子串...提供的方法,他们真的很强大 [a-z0-9] 匹配括号中的字符集中的任意字符等价于 [abcd..z0123..9] []:用来定义一个字符集合,在使用左[和]右中括号定义的字符集合里,这两个元字符之间的所有字符集合都是该集合的组成部分

4.5K40

玩转JavaScript正则表达式

创建方式 在JavaScript中,我们可以通过RegExp()构造函数或者RegExp直接量两种方式去创建正则表达式。...var pattern1 = /s$/; var pattern2 = new RegExp('s$'); 上面代码中的pattern1和pattern2是等价的,都是用来匹配所有以字母s结尾的字符串。...字符字符 匹配 [...] 方括号内任意字符 [^...] 不在方括号内的任意字符 ....只组合,把项组合到一个单元,但不记忆与该组相匹配字符 \n 和第n个分组第一次匹配字符匹配,组是圆括号中的子表达式(也有可能是嵌套),组索引是从左到右的左括号数,“(?...设置g则返回所有匹配结果,否则数组的第一个元素是匹配字符串,剩下的是圆括号中的子表达式,即a[n]中存放的是$n的内容。 String.split() 参数:正则表达式或字符串。

1.1K30

讲给前端的正则表达式(1):基本概念

.'); // true regex1.test('dog1'); // false 字符集 用方括号 [ ] 表示。这个模式用来匹配一个字符,该字符可能是括号中的任何字符。...它会匹配括号中未包含的所有内容。...g:全局匹配 多亏了这个标志,所有匹配项都能够被找到。如果没有它,将会在找到第一个匹配项后停止。...它会返回一个新字符串,如果字符串的内容能够与模式匹配,则会替换其内容。你可以使用字符串或正则表达式之类的模式。但棘手的是如果你用字符串去执行这个操作,则无法替换所有出现的模式,只能替换一个模式。...在本文的后续部分中,当正则表达式可以发挥更大作用时,我们将会学习更多高级概念,包括更深入地研究 JavaScript 提供的 RegExp 对象。

1.2K10
领券