如何用JS正则表达式实现类似小括号的功能?

2026-03-30 08:241阅读0评论SEO教程
  • 内容介绍
  • 相关推荐

本文共计504个文字,预计阅读时间需要3分钟。

如何用JS正则表达式实现类似小括号的功能?

主要使用的有下面三种:

1.(...)

将项目组合成一个单元,可以与 * , + , ? , | 等一起使用。同时记住这个组匹配的字符,以便后续引用。

2.(?:)

仅用于组合。

主要使用的有下面三种:

1. (...)

Grouping. Group items into a single unit that can be used with *, +, ?, |, and so on. Also remember the characters that match this group for use with later references.

2. (?:...)

Grouping only. Group items into a single unit, but do not remember the characters that match this group.

3.

(?=p) A positive lookahead assertion. 或

(?!p) A negative lookahead assertion.

用于测试的字符串:url(skins/default/images/index/default.png)

红色字符为匹配上的结果

第一种,用于普通分组,能记住匹配该分组的字符串,并且可以在以后通过\1的方式来引用所匹配到的分组

eg: (\/)匹配url(skins/default/images/index/default.png)

(\/)default\1匹配url(skins/default/images/index/default.png)

第二种,用于分组,不记录匹配该分组的字符串

eg:(?:\/)default匹配url(skins/default/images/index/default.png)

第一、二两种方式匹配的结果里都包含有该分组匹配到的结果,在例子中是"/default"中的"/"

第三种,只用于确定位置,最终结果里并不包含该括号匹配到的结果

eg: (?!\/)default匹配url(skins/default/images/index/default.png)

eg:default(?=\/)匹配url(skins/default/images/index/default.png)

如何用JS正则表达式实现类似小括号的功能?

本文共计504个文字,预计阅读时间需要3分钟。

如何用JS正则表达式实现类似小括号的功能?

主要使用的有下面三种:

1.(...)

将项目组合成一个单元,可以与 * , + , ? , | 等一起使用。同时记住这个组匹配的字符,以便后续引用。

2.(?:)

仅用于组合。

主要使用的有下面三种:

1. (...)

Grouping. Group items into a single unit that can be used with *, +, ?, |, and so on. Also remember the characters that match this group for use with later references.

2. (?:...)

Grouping only. Group items into a single unit, but do not remember the characters that match this group.

3.

(?=p) A positive lookahead assertion. 或

(?!p) A negative lookahead assertion.

用于测试的字符串:url(skins/default/images/index/default.png)

红色字符为匹配上的结果

第一种,用于普通分组,能记住匹配该分组的字符串,并且可以在以后通过\1的方式来引用所匹配到的分组

eg: (\/)匹配url(skins/default/images/index/default.png)

(\/)default\1匹配url(skins/default/images/index/default.png)

第二种,用于分组,不记录匹配该分组的字符串

eg:(?:\/)default匹配url(skins/default/images/index/default.png)

第一、二两种方式匹配的结果里都包含有该分组匹配到的结果,在例子中是"/default"中的"/"

第三种,只用于确定位置,最终结果里并不包含该括号匹配到的结果

eg: (?!\/)default匹配url(skins/default/images/index/default.png)

eg:default(?=\/)匹配url(skins/default/images/index/default.png)

如何用JS正则表达式实现类似小括号的功能?