正则表达式语法表
正则表达式是一种用于匹配字符串中字符组合的模式,通常被用于各种文本搜索和替换操作。在 JavaScript 中,正则表达式也是对象,这些模式被用于 RegExp 的 exec 和 test 方法,以及 String 的 match 和 replace 方法。
正则表达式有两种主要类型:基本正则表达式(BRE)和扩展正则表达式(ERE)。BRE 是最基本的正则表达式类型,其语法类似于基本的字符匹配运算符。而 ERE 提供了更高级的功能,可以匹配更多的字符组合。下面是常见的正则表达式元字符及其含义:
- . : 匹配除换行符以外的任意单个字符。
javascript高级语法- ^ : 匹配行的开头。
- $ : 匹配行的结尾。
- * : 匹配前面的子表达式零次或多次。例如,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中的任何一个字符匹配。
以上是常用的正则表达式元字符及其含义,当然还有更多的元字符可以使用,可以根据实际需求灵活运用。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论