(?!\.php)
è un operatore perge regexp. less
generalmente usa l'API regexp POSIX del sistema, quindi in genere GNU ha esteso le espressioni regolari su un sistema GNU, vim
usa vim
espressioni regolari.
In vim
, come già mostrato da cuonglm, l'equivalente di index(?!\.php)
sarebbe index\(\.php\)\@!
o \vindex(\.php)@!
.
Per less
, al momento della compilazione, è possibile scegliere la libreria / API regex e di conseguenza il tipo regex da utilizzare:
--with-regex={auto,gnu,pcre,posix,regcmp,re_comp,
regcomp,regcomp-local,none}
Select a regular expression library auto
Per impostazione predefinita, tuttavia, less
utilizzerà POSIX regcomp
con REG_EXTENDED, quindi otterrai le espressioni regolari estese del tuo sistema, quindi in genere qualcosa di simile a con grep -E
.
In GNU regexp esteso, non esiste un operatore equivalente per guardare indietro o guardare avanti.
Potresti farlo nel modo più duro:
index($|[^.]|\.($|([^p]|p($|([^h]|h($|[^p]))))))
Con less
, è possibile utilizzare il &
tasto per filtrare le righe contenenti index.php
(&!index\.php
), quindi cercare index
( /index
). (ti mancheranno comunque le altre istanze index
che compaiono su una riga che contiene anche index.php
).