Regex guid的vim模式是什么
我在文本文件中有GUID数据,类似于以下文件:Regex guid的vim模式是什么,regex,vim,pattern-matching,guid,Regex,Vim,Pattern Matching,Guid,我在文本文件中有GUID数据,类似于以下文件: D3C8D467-52DA-4B4F-8821-A589019ADDE2 我在VIM中尝试了以下模式匹配。但是,他们没有成功 [0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12} [0-9A-F]{8}[-][0-9A-F]{4}[-][0-9A-F]{4}[-][0-9A-F]{4}[-][0-9A-F]{12} 在VIM中查找guid的正确模式是什么 Vim需要一种不同的逃逸方
D3C8D467-52DA-4B4F-8821-A589019ADDE2
我在VIM中尝试了以下模式匹配。但是,他们没有成功
[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}
[0-9A-F]{8}[-][0-9A-F]{4}[-][0-9A-F]{4}[-][0-9A-F]{4}[-][0-9A-F]{12}
在VIM中查找guid的正确模式是什么 Vim需要一种不同的逃逸方式:
[A-F0-9]\{8}-[A-F0-9]\{4}-[A-F0-9]\{4}-[A-F0-9]\{4}-[A-F0-9]\{12}
检查
:帮助模式概述
在vim中,文档非常好。vim需要一种不同的转义:
[A-F0-9]\{8}-[A-F0-9]\{4}-[A-F0-9]\{4}-[A-F0-9]\{4}-[A-F0-9]\{12}
检查vim中的帮助模式概述,文档非常好。您的问题是您没有逃逸
{4}
部分,但是您应该逃逸,您正在逃逸破折号,但是您不应该逃逸。要解决这个问题,只需
[0-9A-F]\{8}-[0-9A-F]\{4}-[0-9A-F]\{4}-[0-9A-F]\{4}-[0-9A-F]\{12}
要解决类似这样的正则表达式问题,请尝试设置
:set incsearch
因此,您可以在键入搜索时看到匹配的搜索。我还建议使用书签,这是解决vim regex问题的一个极好的资源
您还可以做一些事情来提高样式的可读性
- 我建议使用
元字符而不是范围,因为它们在功能上是等效的。这使得:\x
\x\{8}-\x\{4}-\x\{4}-\x\{4}-\x\{12}
- 你不需要重复
三次。您可以只需要三个匹配项:\x\{4}-
\x\{8}-\(\x\{4}-\)\{3}\x\{12}
- 你可以打开“魔术”,这将让你使用更少的反斜杠
\v\x{8}-(\x{4}-){3}\x{12}
这是我所知道的最短和最可读的版本。你的问题是你没有逃逸
{4}
部分,但你应该逃逸,你正在逃逸破折号,但你不应该逃逸。要解决这个问题,只需
[0-9A-F]\{8}-[0-9A-F]\{4}-[0-9A-F]\{4}-[0-9A-F]\{4}-[0-9A-F]\{12}
要解决类似这样的正则表达式问题,请尝试设置
:set incsearch
因此,您可以在键入搜索时看到匹配的搜索。我还建议使用书签,这是解决vim regex问题的一个极好的资源
您还可以做一些事情来提高样式的可读性
- 我建议使用
元字符而不是范围,因为它们在功能上是等效的。这使得:\x
\x\{8}-\x\{4}-\x\{4}-\x\{4}-\x\{12}
- 你不需要重复
三次。您可以只需要三个匹配项:\x\{4}-
\x\{8}-\(\x\{4}-\)\{3}\x\{12}
- 你可以打开“魔术”,这将让你使用更少的反斜杠
\v\x{8}-(\x{4}-){3}\x{12}
这是我所知道的最短、最可读的版本。不错的版本,我不知道
\v
!不错的一个,不知道\v
!