正则表达式语法表
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
正则表达式语法表
正则表达式是一种用于匹配字符串中字符组合的模式,通常被用于各种文本搜索和替换操作。在JavaScript 中,正则表达式也是对象,这些模式被用于RegExp 的exec 和test 方法,以及String 的match 和replace 方法。
正则表达式有两种主要类型:基本正则表达式(BRE)和扩展正则表达式(ERE)。BRE 是最基本的正则表达式类型,其语法类似于基本的字符匹配运算符。而ERE 提供了更高级的功能,可以匹配更多的字符组合。下面是常见的正则表达式元字符及其含义:
- . : 匹配除换行符以外的任意单个字符。
- ^ : 匹配行的开头。
- $ : 匹配行的结尾。
- * : 匹配前面的子表达式零次或多次。例如,zo*能匹配"z"以及"zoo"。
- + : 匹配前面的子表达式一次或多次。例如,"zo+"能匹配"zo"以及"zoo",但不能匹配"z"。
- ? : 匹配前面的子表达式零次或一次。例如,do(es)?可以匹配"do"或"does"中的"do"。
- {n} : n是一个非负整数。匹配确定的n次。例如,o{2}不
匹配"Bob"中的"o",而是匹配"food"中的两个"o"。
- {n,} : n是一个非负整数。至少匹配n次。例如,o{2,}不匹配"Bob"中的"o",但匹配"foooood"中的所有"o"。'o{1,3}'将匹配"o"和"ooo"。
- {n,m} : m和n均为非负整数,其中n <= m。最少匹配n 次且最多匹配m次。例如,o{1,3}将匹配"o"、"oo"或"ooo "。注意:逗号和两个表达式之间必须有空格。
此外,还有一些特殊字符需要转义才能在正则表达式中使用,包括:
- \b : 匹配单词边界,例如:"er\b"可以匹配"neverwhere" 中的"er",但不能匹配"verb" 中的"er"。
- \B : 匹配非单词边界。'er\B'将不匹配"neverwhere" 中的'er',但会匹配"verb" 中的'er'。
- \\ : 用于转义元字符。
- [...] : 定义一个字符集合。例如,[abc]与a、b和c中的任何一个字符匹配。
以上是常用的正则表达式元字符及其含义,当然还有更多的元字符可以使用,可以根据实际需求灵活运用。