[求助]正则表达式的正向否定预查,无法筛选某些字符串

2022-03-22 11:36:35 +08:00
 ALLROBOT

every(?!n) 匹配任何其后没有紧接指定字符串 n 的字符串。

	//匹配后面字符不为 10 的 win
	var str = "win7 win8 win10";
	var res = str.match(/win(?!10)/g);
	console.log(res); //["win", "win"]
    

在以下文本中

-0"][-ext-contains="/欧美(.*?)极乐天堂 /"],tbody[-ext-contains="/欧美(.*?)极乐天堂 /"]
-0"][-ext-contains="/欧美(.*?)自由通行证 /"],tbody[-ext-contains="/欧美(.*?)自由通行证 /"]
-0"][-ext-contains="/欧美(.*?)陶醉的芬香 /"],tbody[-ext-contains="/欧美(.*?)陶醉的芬香 /"]
-0"][-ext-contains="/史上最贵 RPG:命中注定的召唤术(.*?)1.17/"]
-0"][-ext-contains="/欧美(.*?)身心荡漾 /"]
-0"][-ext-contains="/欧美(.*?)恶女管教所 /"]

使用d\-0\"\]\[\-ext\-contains\=\"(.*?)\"\](?!\,) d\-0\"\]\[\-ext\-contains\=\"(.*?)\"\](?!,)

只能匹配-0"][-ext-contains="/欧美(.*?)极乐天堂 /"],tbody[-ext-contains="/欧美(.*?)极乐天堂 /"]

无法匹配-0"][-ext-contains="/欧美(.*?)身心荡漾 /"]这种不带","标点的字符串

编写的正向否定环视哪里出问题了

521 次点击
所在节点    正则表达式
1 条回复
ALLROBOT
2022-03-25 21:28:36 +08:00
噢,忘了结贴,其实多天前已经解决了

\-0\"\]\[\-ext\-contains\=\"([^"]*)\"\](?!,)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/842059

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX