一、术语与操作符
1)精确匹配
如果一个字符不是特殊字符或操作符,则表示该字符必须在表达式中出现。
例如“/test/”,就表示“t”后面跟着“e”,“e”后面跟着“s”,“s”后面跟着“t”。
2)匹配一类字符
很多时候是想匹配一个有限字符集中的某一个字符。
例如“[abc]”,就是要匹配“a”、“b”或“c”中的任意一个字符。
例如“[^abc]”,就是除了“a”、“b”、“c”之外的任意字符。
例如“[a-m]”,就是从“a”到“m”之间的任意字符。
3)转义
并不是所有字符和其字符字面量都是等价的。
例如匹配“$”、“.”这种特殊字符,需要添加“\”反斜杠,“\$”、“\.”。
4)匹配开始与匹配结束
经常需要确保模式匹配一个字符串的开始,或者一个字符串的结束。
“/^test/”表示以“test”开始,“/test$/”表示以“test”结尾。
5)重复出现
1. “?”表示出现一次或不出现,例如“/t?est/”可以匹配“test”或“est”。
2. “+”表示出现一次或多次,例如“/t+est/”可以匹配“test”、“ttest”。
3. “*”表示出现零次或多次,例如“/t*est/”可以匹配“est

