本文详细介绍js中正则表达式的使用。
由上图可得:
1.可用正则表达式字面量直接调用test函数进行正则匹配判断,也可用new RegExp对象的方法。
2.正则表达式test函数返回布尔值。
由上图可得:
1.点号表示除换行符外的任意字符。
2.u表示unicode。
3.D表示d的补集,W和S亦同理。
由上图可得:
1.[abc]表示a或b或c,[^abc]表示除a、b、c外的任一字符。
2.no匹配a no这样的字符串。
若需要匹配特殊字符如^,则需要加上反斜杠。
由上图可得:
1.分组功能可分组并记录字符串,并可用 重复分组。如/(abc)1/匹配abcabc。
2.若在分组时加上?:,则仅分组不记录。
由上图可得:
1.abc*默认使用贪婪算法匹配,可匹配ab、abc、abcccccccc等。
2.abc*?默认使用非贪婪算法匹配,仅匹配ab。
3.?表示可有可无,a{3,4}表示a重复3-4次,为闭区间。
由上图可得:
1.g、i、m不分排列顺序。
2.g是全局匹配,i是不分大小写匹配,m是可多行匹配。
3.用RegExp对象时,mgi可作为第二个参数传入。
由上图可得:
1.正则表达式对象可以查看flag的对象属性是否存在。
2.正则表达式对象的source属性可返回正则字符串。
由上图可得:
1.exec函数可以返回匹配到的字符串子串。
2.toString函数返回如/abc/这样的正则表达式字符串。
3.complie函数是用参数覆盖原来的正则表达式。
由上图可得:
1.String类型的一些函数可以应用正则表达式作为参数。
2.search可搜索索引,replace用于替换子串,match返回的是匹配的数组,split返回的是分隔后的数组。