gpt4 book ai didi

javascript - 从冒号向后捕获文本,直到逗号或行首

转载 作者:行者123 更新时间:2023-12-03 18:32:30 27 4
gpt4 key购买 nike

我需要创建一个 javascript 正则表达式来捕获 css 选择器。

这里有一些例子:

*, ::before, ::after // do not capture anything
::before // do not capture anything
.class1, .class2:before,.class3::after // capture .class2 and .class3
.class4::before // capture .class4
.class-5::before // capture .class-5
.class__6::after // capture .class__6
.class--7 > .child::after // capture .class--7 > .child
#id1 + .something:after // capture #id1 + .something
#id2[attribute-one="1"] + .class8:before // capture #id2[attribute-one="1"] + .class8

Here is what I currently have : /([.#\-+~>\[\]\"\'=\w ]+)(?=:?:)/g。这并不理想,因为我基本上有将特殊字符列入白名单。

相反,我宁愿做这样的事情:

  1. 找到冒号
  2. 向后移动直到遇到逗号或行首

忽略单独空格的加分,所以

*, ::before

不会捕获逗号后的空格。

注意:这本质上是这个 question 的一个更复杂的版本

最佳答案

你可以使用这个正则表达式:

(?:^|,)([^:,\n]+):

然后捕获捕获的第 1 组进行比赛。

RegEx Demo

关于javascript - 从冒号向后捕获文本,直到逗号或行首,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25921559/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com