gpt4 book ai didi

javascript - 匹配字符串,除非它在方括号内

转载 作者:行者123 更新时间:2023-11-30 05:51:58 24 4
gpt4 key购买 nike

我正在尝试将我发现的 JQuery zen 编码插件改编为我自己的用途。我遇到的问题之一是代码中的错误,其中类似

a[href="google.com"]

将扩展为

 <a href="google.com" class="com"</a>

代码使用的正则表达式是:

/(\.[\w-]+)/gi

我已经修改了它,看它前面是否有偶数个括号。

/(\.[\w-]+)(?=([^\]]*\][^\]]*\])*[^\]]*$)/gi

我使用了正则表达式测试器,它似乎可以工作,但是当使用 javascript .match() 时,它会返回“.com”作为上述字符串中的匹配项。

下面的回复解决了有问题的错误,但又产生了一个新错误。现在:

a.class[href="google.com"]

没有解决

http://jsfiddle.net/sA9sQ/

编辑:我接受了下面的答案,因为它让我到达了我需要去的地方。最终的正则表达式是 /(\.[\w-]+)(?=([^\]]*\][^\]]*\])*[^\]]*\.[\w-]+)/gi

最佳答案

尝试将前瞻移动到正则表达式的前面,如下所示:

/(?=([^\]]*\][^\]]*\])*[^\]]*$)(\.[\w-]+)/gi

关于javascript - 匹配字符串,除非它在方括号内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14161652/

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