Michael Schröpl: (ZU DIESEM FORUM) (Archiv-Suche): Eingabesyntax für komplexe Suchanfragen / Tokenizer

Beitrag lesen

Darf ich dich fragen, wie du die Vorzeichen der Tokens vergleichen willst, wenn du sie vorher rausschneidest? Bei meiner Version wurden sie automatisch direkt nach dem Vergleich rausgeschnitten und der Rest dann in das betreffende Array gepushed.

Das habe ich beim vierten Lesen endlich auch begriffen (boah, war das kompakt!), aber ein Vergleich mit s//-Operator-Seiteneffekt (phhh ...) war mir denn doch *etwas* zu kryptisch, also habe ich ihn durch

foreach my $one_token (@Token)
           {
             # Jetzt die "%20"-Markierungen wieder die "inneren" Leerzeichen
             # zurückverwandeln
             $one_token =~ s/%20/ /g;

# Vorzeichen wegfiltern, Token auf den passenden Stapel legen
             if    ($one_token =~ /^+(.*)/)
                   { push @Must, $1; }
             elsif ($one_token =~  /^-(.*)/)
                   { push @Not,  $1; }
             else  { push @Can,  $one_token; }
           }

usw. ersetzt.

(Ich hoffe, das geht noch halbwegs als Perl durch; mit anonymem $_ kann ich mich auch nicht so recht anfreunden - ich dachte, die Zeiten der Maschinensprache mit Akkumulatur und Registern sind langsam vorbei? :-)

0 62

(ZU DIESEM FORUM) (Archiv-Suche): "Wunschkonzert"

Michael Schröpl
  1. 0

    (ZU DIESEM FORUM) (Archiv-Suche): Umlaute und Sonderzeichen

    Michael Schröpl
  2. 0

    (ZU DIESEM FORUM) (Archiv-Suche):

    Michael Schröpl
    1. 0

      (ZU DIESEM FORUM) (Archiv-Suche): Eingabesyntax für komplexe Suchanfragen / Tokenizer

      Michael Schröpl
      1. 0
        Frank Schönmann
        1. 0
          Michael Schröpl
          1. 0
            Frank Schönmann
            1. 0
              Michael Schröpl
  3. 0
    Tom
    1. 0
      Michael Schröpl
      1. 0
        Tom
        1. 0
          Michael Schröpl
  4. 0

    (ZU DIESEM FORUM) (Archiv-Suche): Datenmodell und Operatoren

    Michael Schröpl
    1. 0
      Tom
      1. 0
        Michael Schröpl
        1. 0
          Frank Schönmann
          1. 0
            Michael Schröpl
          2. 0
            Stefan Muenz
          3. 0

            (Archiv-Suche): Stopwortliste für Archiv-Index

            Michael Schröpl
            1. 0
              Frank Schönmann
    2. 0

      (ZU DIESEM FORUM) (Archiv-Suche) Operatoren: "+" (MUST), "-" (NOT) und " " (CAN)?

      Michael Schröpl
      1. 0
        Stefan Muenz
        1. 0
          Frank Schönmann
          1. 0

            (ZU DIESEM FORUM) (Archiv-Suche) Limitierung und Sortierung von Treffern

            Michael Schröpl
          2. 0
            Stefan Muenz
            1. 0
              Frank Schönmann
    3. 0

      (ZU DIESEM FORUM) (Archiv-Suche): Operatoren MUST und NOT implementiert

      Michael Schröpl
  5. 0

    (ZU DIESEM FORUM) (Archiv-Suche): Case-Sensitivität

    Michael Schröpl
    1. 0
      Wilhelm
      1. 0
        Tom
        1. 0
          wilhelm
          1. 0

            (ZU DIESEM FORUM) (Archiv-Suche): Case-Sensitivität ist implementiert

            Michael Schröpl
            1. 0
              Swen
      2. 0
        Michael Schröpl
    2. 0
      Michael Schröpl
  6. 0

    (ZU DIESEM FORUM) (Archiv-Suche): Qualität

    nikita
    1. 0
      Michael Schröpl
  7. 0
    Swen
  8. 0
    Wasser
    1. 0
      Michael Schröpl
      1. 0
        Wasser
        1. 0

          (Archiv-Suche) Vorschlag

          Wasser
          1. 0
            Michael Schröpl
            1. 0
              Frank Schönmann
  9. 0
    Calocybe
    1. 0
      Michael Schröpl
      1. 0
        Stefan Muenz
      2. 0
        Calocybe
        1. 0
          Stefan Muenz
  10. 0
    Stefan Muenz
    1. 0
      Michael Schröpl
      1. 0
        Stefan Muenz
        1. 0
          Michael Schröpl
          1. 0
            Stefan Muenz
        2. 0
          Calocybe
          1. 0
            Michael Schröpl
  11. 0
    wilhelm
    1. 0
      Michael Schröpl
      1. 0
        Michael Schröpl
      2. 0
        wilhelm
        1. 0
          Michael Schröpl
  12. 0
    Swen