Suche negieren von vim wie bei sed

Dieses Thema im Forum "Anwendungen" wurde erstellt von zielscheibe, 25.04.2006.

  1. #1 zielscheibe, 25.04.2006
    zielscheibe

    zielscheibe Mitglied

    Dabei seit:
    31.10.2005
    Beiträge:
    28
    Zustimmungen:
    0
    Hallo NG!

    Gibt es bei VIM keine Möglichkeit die suche wie bei sed
    zu negieren ?
    Wenn ich also alle Zeilen finden will die NICHT xyz enhalten !?
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Wolfgang, 25.04.2006
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo
    Natürlich gibt es das. Wenn du dich mit regulären Ausdrücken einigermaßen auskennst, ist das kein Problem.
    Unter vim 5.x ist die Syntax für die Negation genauso wie bei sed.
    [^xyz] nimmt alles ausser xyz.

    Schau auch mal hier rein.

    Gruß Wolfgang
     
  4. #3 zielscheibe, 25.04.2006
    zielscheibe

    zielscheibe Mitglied

    Dabei seit:
    31.10.2005
    Beiträge:
    28
    Zustimmungen:
    0
    Hallo Wolfgang!

    Jo, das mit den RegEx ist mir bekannt.
    Dachte, es gäbe vielleicht wie beim SED
    einen Parmater (glaube -v ) mit dem man
    das erreichen kann.
    Trotzdem Danke, werde mir mal den Link
    noch zu Gemüte führen...
     
  5. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    Und wie wendet man das '^' auf ein ganzes Wort an? Wenn es nicht innerhalb von eckigen Klammern steht, bedeutet es Zeilenanfang, wenn es innerhalb eckiger Klammern steht, werden die Zeichen darin doch einzeln abgearbeitet und nicht als Wort aufgefasst, oder nicht? [^xyz] bedeutet dann (nicht x und nicht y und nicht z). Wenn man nach einem Wort sucht, bringt einen das doch nicht weiter??
     
  6. #5 Wolfgang, 26.04.2006
    Zuletzt bearbeitet: 26.04.2006
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo @rikola

    Das Problem welches du hier schilderst ist mit regulären Ausdrücken generell nicht direkt lösbar. Auch nicht mit sed und perl usw.
    Dafür verwendet man üblicherweise die Negation der einzelnen Zeichen und kombiniert diese zu Gruppierungen.
    \([^a][^u][^c][^h]\) Hier nicht a gefolgt von nicht u gefolgt von nicht c .... =auch
    Oder der Programmfluss steuert das abhängig von positiven Matching.
    Hier würde ich beispielsweise sagen können , ersetze nur,wenn nicht "auch" gefunden wird.

    Das ist aber dann abhängig von der Anwendung und der Scriptsprache.

    In perl gibt es da so schöne Konstrukte, wo ich der Aktion noch eine Bedingung hinterher werfen kann.8)

    tr/a/A/g unless (/\bauch\b/) würde z.B. a durch A ersetzen, wenn das gematchte Wort nicht "auch" an einer Wortgrenze ist. Ich könnte natürlich auch mit next, break usw. weitermachen, um bestimmte Zeichengruppen/Wörter auszuschließen.

    ergo Negation ;)

    Hoffe etwas zur Klarheit beigetragen zu haben.
    Gruß Wolfgang
     
  7. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    Ja. Vielen Dank!
     
  8. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
Thema: Suche negieren von vim wie bei sed
Besucher kamen mit folgenden Suchen
  1. sed negation ersetzen

Die Seite wird geladen...

Suche negieren von vim wie bei sed - Ähnliche Themen

  1. Suche in Datei doppelte Wörter in jeder Zeile bis zum dritten Leerzeichen...

    Suche in Datei doppelte Wörter in jeder Zeile bis zum dritten Leerzeichen...: Ich habe eine Textdatei in der ich Einträge bis zum 3. Leerzeichen mit den restlichen Zeilen (auch nur bis 3. Leerzeichen) vergleichen muss und...
  2. Shell-Skript Datum in einer Datai suchen

    Shell-Skript Datum in einer Datai suchen: Hallo zusammen Ich komm eigentlich aus der Klicki-Bunti-Welt von Windows. Seit geraumer Zeit versuche ich meine Künste mit verschiedenen...
  3. [Gelöst] Suchen und ersetzen mit Hilfe mehrerer Parameter

    [Gelöst] Suchen und ersetzen mit Hilfe mehrerer Parameter: Hallo zusammen, ich bin an einem Punkt angekommen, wo ich nicht mehr weiter komme und hoffe ihr könnt mir weiter helfen. Anbei ein Ausschnitt aus...
  4. Funktionssuche in C: Emacs oder Vim?

    Funktionssuche in C: Emacs oder Vim?: Hallo, ich muss mir häufig C-Projekte angucken, und dann suche ich bspw., wo eine aufgerufene Funkion definiert oder deklariert (Header) wird....
  5. Artikel: Suche und Analyse in Echtzeit mit Elasticsearch und dem Elastic Stack

    Artikel: Suche und Analyse in Echtzeit mit Elasticsearch und dem Elastic Stack: Mit dem Elastic Stack kann man in Echtzeit die wichtigen Informationen aus jedem Datensatz herauslesen, ungeachtet seiner Größe. Dieser Artikel...