gpt4 book ai didi

regex - Vim 积极的lookbehind bug?

转载 作者:行者123 更新时间:2023-12-01 18:03:23 25 4
gpt4 key购买 nike

将其输入到文件中:

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

Hello
A

Hello
B

然后使用 / 搜索此内容:

\(Hello\n\)\@<=A

在我的 Vim 版本(7.4,包含的补丁:1-582)上,Hello 下面的 A 按预期匹配,B不是,而且第一行第446个A也匹配。

这也有一些奇怪的行为,如果我用更多的 A 使行更长,第 632 个 A 会突出显示。如果我在行首引入 16 个空格,则该行的第 447 个和第 632 个字符会匹配。

我的问题是,这会影响其他人吗?这真的是一个错误还是我的搜索错误?

最佳答案

是的,这看起来像是一个错误。我可以使用 Vim 7.4.608 进行重现,但只能使用默认的 :set regexpengine=0 自动选择。

要避免此问题,您可以更改全局选项,或在模式内显式指定引擎:

\%#=1\(Hello\n\)\@<=A
\%#=2\(Hello\n\)\@<=A

请将此错误报告给 vim_dev mailing list ,或its issue tracker .

关于regex - Vim 积极的lookbehind bug?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28483033/

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