关于javascript的基础知识

元字符

关于javascript的基础知识

^ $ . * + ? = ! : | / ( ) [ ] { }

在使用这些符号时需要用“”来进行转移。

如果记不清楚那些标点符号需要转移,可以在使用标点符号时都使用反斜杠“”

简单匹配

1、直接量 /javascript/ 匹配带有“javascript”的字符串 比如“javascript is an object-oriented scripting language”

2、[ ] /[abc]/ 匹配字符“a”或“b”或“c”

3、[^] /[^abc]/ 匹配除了a、b、c之外的任意字符

4、. /./ 任意字符

5、w /w/ 任意ASCII单字符,等价于[a-zA-Z0-9]

6、s /s/ 空白符

7、d /d/ 数字,等价于[0-9]

重复

1、{n,m} /[a]{3,5}/ 重复次数至少n次最多m次,比如“aaa”或“aaaa”或“aaaaa”

2、{n,} /[a]{3,}/ 重复次数至少n次,比如“aaa”或“aaaaa”或“aaaaaa”……

3、{n} /[a]/{3} 刚好匹配n次,比如只能匹配“aaa”

4、? /[a]?/ 0次或1次

5、+ /[a]+/ 1次或多次

6、* /[a]*/ 0次或多次

选择、分组

1、| /a|b/ 选择,匹配“a”或“b”

2、() /(abc)+/ 分组,匹配“abc”或“abcabc”……

位置

1、^ /^a/ 以“a”开始,比如“ab”或“abc”……

2、$ /b$/ 以“b”结束,比如“ab”或“cb”……

标志

1、i /a/i 不区分大小写,比如“a”或“A”

2、g /b/g 全局匹配、找到所有的'匹配

方法

1、 var ret = “javascript”ch(/script/i) 返回第一次匹配子串开始字符的位置,没有匹配返回-1

2、 var ret = “javascript”ace(/java/gi,””) 讲匹配的子串替换成函数的第二个参数;

3、 var ret = “javascript”h(/(java)(script)/gi) 返回一个数组

ret[0] 完整的匹配“javascript”

ret[1] 第一个括号匹配的子串“java”

ret[2] 第二个括号匹配的子串“script”

……

4、 var ret = “javascript”t(/a/) 用参数匹配的子串作为分隔符分解字符串 返回数组