É possível usar NOT em uma expressão regular no TextMate?

É possível usar NOT em uma expressão regular no TextMate?

Eu tenho um projeto Matlab no qual estou trabalhando no editor OSX TextMate. Preciso encontrar todas as instâncias de uma determinada palavra, digamos que seja "foo", que também não seja precedida por "." ou sucedido por um "/".

No entanto, não consigo encontrar nenhuma maneira de procurar expressões regulares definidas negativamente assim. Alguém sabe se é possível procurar algo como "A precedido por algo diferente de B"?

(TextMate usa oBiblioteca de expressões regulares Onigurumapor K. Kosako.)

Responder1

Você deseja usar esta parte da sintaxe:

(?=subexp)         look-ahead
(?!subexp)         negative look-ahead
(?<=subexp)        look-behind
(?<!subexp)        negative look-behind

No seu caso,(?<!\.)foo(?!/)

Responder2

O ^ (circunflexo ou acento circunflexo) entre colchetes nega a expressão. Portanto, para encontrar um "foo" não precedido por um "." seria:

[^.]foo

informação relacionada