簡體   English   中英

如何在vim正則表達式搜索中匹配角度大括號>但不匹配>>

[英]How do I match angle brace > but not >> in vim regular expression search

我已成功匹配<但不是先前(負面后瞻斷言)或跟隨(負前瞻斷言) <

<\@>!<<\@!

但是,當我嘗試匹配單個>排除>> ,以下表達式不起作用

>\@>!>>\@!

為什么? 我該如何進行搜索?

你的<\\@>!<<\\@! 正則表達式:

  • <\\@>! lireraly匹配<\\@>! ; 我想你的意思是<\\@<!
  • <匹配<
  • <\\@! 如果<在當前位置不匹配,則匹配零寬度

它適用於<\\@<!<<\\@!

斷言背后的負面看法的語法是(atom)\\@<! ,其中(atom)是你不想匹配的東西。 在這種情況下,這是< ,因此<\\@<!

負前瞻斷言的語法是(atom)\\@! ,其中(atom)是你不想匹配的東西。 在這種情況下,它是< ,因此<\\@!

在PCRE中,正則表達式將是:

(?<!<)<(?!<)

另一個正則表達式( >\\@>!>>\\@! )有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM