2011-11-01 11 views
7

W Vimie do grupowania niektórych znaków wymagane jest użycie sekwencji \ (\). To samo zachowanie dotyczy innych specjalności: \ {\}.Czy można zmienić dialekt vim regexp?

Czy można zmienić styl regex na perl? Jak to zmienić?

Zamiast

\\(

bym

(

???

Odpowiedz

11

Możesz zmienić domyślny poziom wymagany „magicznego”

:se nomagic 
:se magic 

Zobacz :he magic

Polecam przy użyciu odpowiednich zamiast ucieczki, aby uniknąć zerwania inne swoje mapowania.

/\v(\d+) 

będzie pasował do kolejnych cyfr jak można się spodziewać z Perl Regex

Od pattern.txt pomoc:

Examples: 
after: \v  \m  \M  \V   matches ~ 
       'magic' 'nomagic' 
      $  $  $  \$   matches end-of-line 
      .  .  \.  \.   matches any character 
      *  *  \*  \*   any number of the previous atom 
     ()  \(\)  \(\)  \(\)  grouping into an atom 
      |  \|  \|  \|   separating alternatives 
      \a  \a  \a  \a   alphabetic character 
      \\  \\  \\  \\   literal backslash 
      \.  \.  .  .   literal dot 
      \{  {  {  {   literal '{' 
      a  a  a  a   literal 'a' 

{only Vim supports \m, \M, \v and \V} 

It is recommended to always keep the 'magic' option at the default setting, 
which is 'magic'. This avoids portability problems. To make a pattern immune 
to the 'magic' option being set or not, put "\m" or "\M" at the start of the 
pattern. 
+0

przepraszam @Johnsyweb jednoczesne zmiany :) dzięki za pomoc! – sehe