(?!\.php)là một toán tử regrec perl. lessthường sử dụng API regex POSIX của hệ thống, do đó, điển hình là GNU mở rộng các biểu thức chính quy trên hệ thống GNU, vimsử dụng vimcác biểu thức chính quy.
Trong vim, như đã được hiển thị bởi cuonglm, tương đương index(?!\.php)sẽ là index\(\.php\)\@!hoặc \vindex(\.php)@!.
Đối với less, tại thời điểm biên dịch, bạn có thể chọn thư viện regex / API và kết quả là loại regex sẽ sử dụng:
--with-regex={auto,gnu,pcre,posix,regcmp,re_comp,
regcomp,regcomp-local,none}
Select a regular expression library auto
Theo mặc định, mặc dù, lesssẽ sử dụng POSIX regcompvới REG_EXTENDED, vì vậy bạn sẽ nhận được các biểu thức chính quy mở rộng của hệ thống của mình, do đó, thường là một cái gì đó tương tự như với grep -E.
Trong GNU mở rộng regrec, không có cái nhìn tương đương phía sau hoặc nhìn về phía trước toán tử.
Bạn có thể làm điều đó một cách khó khăn:
index($|[^.]|\.($|([^p]|p($|([^h]|h($|[^p]))))))
Với less, bạn có thể sử dụng &khóa để lọc các dòng chứa index.php( &!index\.php) và sau đó tìm kiếm index( /index). (bạn vẫn bỏ lỡ các phiên bản khác indexxuất hiện trên một dòng cũng có chứa index.php).