1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Idee für Regexpression

    • Frage
  • andras98
  • 15. Juni 2006 um 20:06
  • Unerledigt
  • andras98
    10
    andras98
    Mitglied
    Reaktionen
    1
    Punkte
    911
    Beiträge
    137
    • 15. Juni 2006 um 20:06
    • #1

    Hi,

    Für eine Auswertung brauch ich eine schnelle Art um folgende Strings zu verarbeiten:

    a, b, c, d, not a, not b.
    e, f, g, h, not i, not j.


    Ich will jene Zeilen selektieren welche einen Buchstaben sowohl mit als auch ohne "not" beinhalten. In der ersten Zeile wäre das a, b.
    Die zweite Zeile sollte ignoriert werden da hier keine Buchstaben mit und ohne "not" vorkommen.
    Ich bin mir nicht sicher ob sowas überhaupt mit Regexpressions geht? Kann dass wer bestätigen?

    Danke,

    Andreas

    --
    Glücklicher Absolvent von 933 :wave2:

  • Plantschkuh!
    24
    Plantschkuh!
    Mitglied
    Reaktionen
    163
    Punkte
    6.173
    Beiträge
    1.181
    • 15. Juni 2006 um 20:26
    • #2

    Es ist mit Regexps nicht möglich, sowas wie "einer von diesen Buchstaben, und später genau der selbe nochmal" auszudrücken.

    Das beste, was man tun könnte, wären getrennte Regexps für jeden Buchstaben (d.h. "a kommt negiert und nicht negiert vor", "b kommt negiert und nicht negiert vor", ...), die dann mit | verbunden werden. Das ist aber natürlich nicht befriedigend; ich würde sagen, du brauchst ein mächtigeres Tool.

    *plantsch*

  • Spockman
    5
    Spockman
    Mitglied
    Punkte
    210
    Beiträge
    41
    • 15. Juni 2006 um 23:53
    • #3
    Zitat von andras98

    Hi,
    Ich bin mir nicht sicher ob sowas überhaupt mit Regexpressions geht? Kann dass wer bestätigen?


    Es geht mit einer Teil-Regexp fuer jeden Buchstaben (und die dann ver-ODER-n). Manche Engines bieten auch sog. "back references" als Erweiterung, z.B.:

    egrep "([a-z]).*not \1"

  • a9bejo
    21
    a9bejo
    Mitglied
    Reaktionen
    42
    Punkte
    4.697
    Beiträge
    913
    • 16. Juni 2006 um 11:16
    • #4
    Zitat von Spockman

    Manche Engines bieten auch sog. "back references" als Erweiterung, z.B.:

    egrep "([a-z]).*not \1"

    'Manche' ist gut: Die Perl/Unix und Emacs Regexp kommen anscheinend alle damit zurecht. :)

    lg, Benjamin Ferrari, bookworm.at

  • Spockman
    5
    Spockman
    Mitglied
    Punkte
    210
    Beiträge
    41
    • 16. Juni 2006 um 19:41
    • #5
    Zitat von a9bejo

    Emacs Regexp

    In .emacs hab ich:

    Code
    (defun dups ()
      (interactive)
      (re-search-forward "\\(\\(?:\\b\\w+\\b\\W*\\)+\\)\\W+\\1\\b"))

    Damit finde ich duplizierte Wortgruppen duplizierte Wortgruppen.

    Keine back references haben flex, lex u.v.a.

  • Maximilian Rupp 27. Dezember 2024 um 12:06

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Benutzer online in diesem Thema

  • 1 Besucher

Rechtliches

Impressum

Datenschutzerklärung