gpt4 book ai didi

regex - 负前瞻被忽略

转载 作者:行者123 更新时间:2023-12-04 07:39:27 24 4
gpt4 key购买 nike

考虑以下正则表达式:
https://regex101.com/r/svOSnY/1
我正在尝试匹配内存量并键入 Laptop HP Chromebook 14 G3 NVIDIA Tegra SOC 4GB DDRL 32GB FLASH 14inch 1366X768 Webcam Chrome OS , 只有当它后面没有一个看起来像内存量的附加东西时。我认为负前瞻正是出于这个原因:(?!\d+\s?(gb|tb))这是我的负面展望
正如它现在应用的那样:/(?:\d+)\s?(?:gb|tb)\s?(?:ddrl|ddr2)\s?(?!\d+\s?(gb|tb))/i4gb ddrl部分仍然与我的字符串匹配,即使它后面跟着 32gb我的负面展望应该意识到的部分。如果我将负前瞻更改为一个简单的捕获组,我的正则表达式会正确捕获整个 4gb ddrl 32gb从字符串的一部分。
我究竟做错了什么?

最佳答案

由于您将空格声明为可选,因此正则表达式 egnine 将尝试匹配字符串而不考虑空格;确实4GB DDRL后面没有直接跟 32GB FLASH (因此它将被匹配)。
为了修复它,请将可选空间放在您的前瞻中:

(?:\d+)\s?(?:gb|tb)\s?(?:ddrl|ddr2)(?!\s?\d+\s?(gb|tb))
demo .

关于regex - 负前瞻被忽略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67570585/

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