gpt4 book ai didi

正则表达式匹配除 404 和 410 以外的任何以数字结尾的链接

转载 作者:行者123 更新时间:2023-12-02 03:20:57 25 4
gpt4 key购买 nike

我还是 Regex 的新手,我想知道你是怎么做到的。

想法是匹配任何以/23.../(数字)结尾但不以 /410/ 结尾的链接和 /404/

目的是将它放在 .htacces 中,这样我就可以将旧页面重定向到 410。

每个旧页面的形状都是 http://www.blabla.com/something/2/ http://www.blabla.com/something/3/等等……

所以我已经完成了这个正则表达式,除了它也包括 404 和 410 而我不允许。

^(.*?)\/\d+$ https://regex101.com/r/tD2sX0/2

然后我很难接受这个,但是它不能正常工作,因为它没有捕获我的 URL,我不确定为什么。

^(.*?(404|410))\/\d+$ https://regex101.com/r/tD2sX0/4

我们很乐意接受一点帮助。

最佳答案

您可以在否定前瞻中添加异常:

^(.*?)\/(?!(?:404|410)$)\d+$

参见 regex demo

前瞻对 \d+(=1 位或更多位)施加了限制,因此数字序列不能是 404410

我正在使用一个非捕获组来保持反向引用列表的清洁。字符串 anchor 的 $ 结尾在前瞻中非常重要,因为它仅将排除的数字限制为 404410(否则,它还会排除 41004)。

关于正则表达式匹配除 404 和 410 以外的任何以数字结尾的链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33498149/

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