Ergebnis 1 bis 13 von 13

Thema: Ersetzungen

  1. #1
    Registriert seit
    16.12.2010
    Beiträge
    433

    Ersetzungen

    Bin hier gerade ein bisschen am verzweifeln, unsere ILS hat die Anordnung im Alarmfax geändert, dadurch musste ich auch diverse Anpassungen durchführen.

    Folgendes Problem:

    Die erstzungen.txt sieht folgendermaßen aus:
    Ort;
    Straße;
    Haus-Nr.;

    In dem Faxinput Plugin ist folgendes eingetragen:
    EINSATZORT;Abschnitt;message

    Situation 1 (hier funktioniert es):

    EINSATZORT
    Ort: Musterhausen
    Straße: Maxmusterstraße Haus-Nr: 12
    Abschnitt:

    Situation 2 (hier funktioniert es nicht):

    EINSATZORT
    Ort Musterhausen
    Straße Münchner Straße Haus-Nr. 99
    Abschnitt

    -----------------------------------------------------------------------------------------------

    Die Erklärung des Problems, bei der Situation 2 ersetzt er zweimal Straße, weil er nicht weiss dass das zweite "Straße" zur wirklichen Straße gehört.

    Nun meine Frage, kann ich mir irgendwie mir das Straße nur ersetzten lassen wenn davor ein Zeilenumbruch steht oder wenn es am Anfang einer Zeile steht?

    ... oder hat einer eine andere Idee?

    Danke schonmal und Gruß,
    FFSSSBZ

  2. #2
    Registriert seit
    09.01.2010
    Beiträge
    3.908
    Ja, eigentlich schon. In Regex dient das ^ als Zeichen dafür, dass der Ausdruck am Zeilenanfang stehen muss. Also so:

    ^Straße;

    Aber ich glaube das wird nicht funktionieren, weil FE den Eingang als "eine Zeile" betrachtet. Somit nutzt das ^ nichts.

    Die : sind im zweiten Beispiel mit Absicht nicht dabei, oder? Weil dann wäre die Regel ja einfach:

    Straße:;

    Idee:
    Ersetze das zweite Straße doch durch Str. Also so:

    Straße ;Str.

    Das Leerzeichen davor ist wichtig, denn dadurch unterscheiden sich ja die beiden "Straße"-Wörter. Beim zweiten ist ein Leerzeichen davor, beim ersten ja nicht.

    Mehr fällt mir momentan nicht ein.

  3. #3
    Registriert seit
    26.05.2013
    Beiträge
    230
    Zitat Zitat von firEmergency Beitrag anzeigen
    Aber ich glaube das wird nicht funktionieren, weil FE den Eingang als "eine Zeile" betrachtet. Somit nutzt das ^ nichts.
    Macht es das? Vor allem beim Faxeingangsplugin? Kann es leider nicht testen, habe kein Fax hier...

  4. #4
    Registriert seit
    16.12.2010
    Beiträge
    433
    Hi,

    das der Doppelpunkt im 1. Beispiel da ist und im 2. nicht war keine Absicht, das Problem ist das es manchmal beim auswerten zu Problem kommt und er ihn dann verschluckt, deswegen hab ich ihn Absichtlich weggelassen.

    Ich hab etwa eine dreiviertel Stunde drüber gegrübelt wie ich es denn anstellen kann, aber das mit dem leerzeichen davor hab ich übersehen.

    Wenn ich es wie folgt mache, müsste es doch dann theoretisch funktionieren oder?
    (erstes ist mit leerzeichen davor)

    Straße; Strasse
    Straße;

    Damit sollte er ja dann erst das zweite Straße mit Strasse ersetzten und dann das erste Straße, was ich rauslöschen will rauslöschen. Da beim zweiten Befehl ja nurnoch einmal Strasse und einmal Straße im Text steht.

    Richtig?

    Gruß,
    FFSSBZ

  5. #5
    Registriert seit
    09.01.2010
    Beiträge
    3.908
    Ja genau, könnte so gehen. Bin mir nur noch 100% sicher, ob die Textersetzung sich um die Reihenfolge der Regeln kümmert (den die Reihenfolge ist hierbei essentiell) . Das musst du mal testen.

    Gesendet via Mobile App

  6. #6
    Registriert seit
    16.12.2010
    Beiträge
    433
    Hab das ganze gerade ausprobiert, funktioniert so nicht. Kann es sein das er die Leerzeichen die vor einem Wort in der Ersetzungen.txt stehen rauslöscht?

    Wenn ich " Straße;Strasse" oder auch mit zwei leerzeichen ausprobiere ändert er mir auch das Straße das ganz am Anfang einer Zeile steht. (In der Zeile davor muss auch ein leerzeichen sein, da ja sonst das Wort zusammen mit dem anderen ist, da der gesamte text eine Zeile ist ... )

    Kann ich mit Regex irgendwie etwas Basteln, das er nur die Ersetzung macht wenn danach Haus-Nr folgt?

    Gruß,
    FFSSBZ

  7. #7
    Registriert seit
    26.05.2013
    Beiträge
    230
    Heisst es immer Haus-Nr?

    traße\sHaus-Nr;trasse Haus-Nr

    http://regexr.com?36he3

    Alternative:

    Du bekommst das erste Strasse mittels
    Straße\s(?!Haus-Nr);
    weg... Hier sucht er nach Straße<Leerzeichen> nicht gefolgt von Haus-Nr

    http://regexr.com?36he6

  8. #8
    Registriert seit
    16.12.2010
    Beiträge
    433
    Letzteres hat funktioniert, vielen vielen dank!

    Gruß,
    FFSSBZ

  9. #9
    Registriert seit
    25.09.2008
    Beiträge
    157
    Zitat Zitat von FFSSBZ Beitrag anzeigen
    Letzteres hat funktioniert, vielen vielen dank!

    Gruß,
    FFSSBZ
    Bei mir auch ! :-)



    Gruß

    Leon

  10. #10
    Registriert seit
    26.05.2013
    Beiträge
    230
    Gerne

    ,-)

  11. #11
    Registriert seit
    16.12.2010
    Beiträge
    433
    sooo, auf zur nächsten Runde :-)

    hab in der Ersetzungen.txt folgendes stehen:
    Ort;

    Wenn jetzt im Alarmtext z.B Ortseingang steht löscht er das Ort davor raus. Ist es irgendwie möglich in der Ersetzungen.txt festzulegen das er das Wort nur ersetzen soll wenn es 1zu1 so vorkommt?

    Gruß,
    FFSSBZ

  12. #12
    Registriert seit
    26.05.2013
    Beiträge
    230
    Mit Leerzeichen dahinter?
    Ort ;

  13. #13
    Registriert seit
    01.03.2012
    Beiträge
    68
    Hi,
    bei uns im Fax werden die Einsatzmittel wie folgt dargestellt:

    Einsatzmittelname: xxyyzz
    gef. Geräte: abc
    Einsatzmittelname: xxyyzz
    gef. Geräte: abc

    usw...

    Wie kann die Zeilen der gef.Geräte löschen? mit der ersetzung.txt muss es doch ein Zeichen geben, dass von gef. Gerät bis Einsatzmittel es gelöscht wird.

    z.B. gef. Gerät - Einsatzmittelname;

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •