Regex-Abfrage – zum Abgleichen von allem außer Zeichenfolgen

Regex-Abfrage – zum Abgleichen von allem außer Zeichenfolgen

Ich versuche hier einen Regex-Ausdruck abzugleichen und hoffe auf eine Richtung.

Ich versuche, Übereinstimmungen für die folgende Liste zu ignorieren, aber alles andere um diese Befehlszeile herum abzugleichen:

(?i)/FORMAT:[^(CSV|HFORM|HTABLE|LIST|MOF|RAWXML|TABLE|VALUE|XML)]

Kann jemand anders eine Anleitung geben?

Um meiner Geschichte noch mehr hinzuzufügen: Ich versuche, in Azure Sentinel einen regulären Ausdruck zu erstellen, der mit allen Dateierweiterungen außer der folgenden Liste übereinstimmt. Azure Sentinel verwendet meines Wissens Python-Regex, und ich kriege es einfach nicht hin, dass es richtig funktioniert.

Antwort1

Nur eine Vermutung.

(?i)\/FORMAT:(?!(?:CSV|HFORM|HTABLE|LIST|MOF|RAWXML|TABLE|VALUE|XML))\w+

?!bedeutet (Doppelpunkt) „nicht gefolgt von“.

?:bedeutet „diese Klammer nicht erfassen“ (macht es vielleicht etwas schneller).

\w+bedeutet „ein Wort“.

https://regex101.com/r/DmQwAa/1


Oder meinst Du sowas wie:

(?i)^\S+\s+(?:[\/-]\S+\s+){0,100}[\/-]FORMAT:(?!(?:CSV|HFORM|HTABLE|LIST|MOF|RAWXML|TABLE|VALUE|XML))\S+\s+(?:[\/-]\S+(?:\s+|$)){0,100}$

https://regex101.com/r/DmQwAa/3


Benötige mehr Beispiele vom OP.

verwandte Informationen