Autor Thema: javascript split mit oder Bedingung  (Gelesen 5959 mal)

Offline thomson666

  • Senior Mitglied
  • ****
  • Beiträge: 285
  • Geschlecht: Männlich
  • niemand hats leicht, aber leicht hats oan...
javascript split mit oder Bedingung
« am: 11.09.12 - 07:54:57 »
Hi!

Ich hab hier mal eine grundsätzliche Frage, im Web hab ich zwar schon einiges gefunden, allerdings scheine ich die Syntax nicht hinzubekommen.

Ich habe einen String der so aussieht:

Information vom 12.12.2012 --> weitere Information vom 13.12.2012 --> Alles funktioniert wieder (14.12.2012) zusatzliche Info vom 15.12.2012 -->

Ich will diesen String jetzt splitten.
Dazu verwende ich derzeit
var s;
s = document2.getItemValueString("ablauf");
var a1 = s.split("->");
Das Ergebnis hier wie nicht anders zu erwarten, ein Array mit 3 Einträgen
der letzte Eintrag ist aber:
Alles funktioniert wieder (14.12.2012) zusatzliche Info vom 15.12.2012 -->
und hier sollte aber nach der Klammer auch gesplittet werden.
Im Netz hab ich geschaut und es gäbe die Möglichkeit einen Split mit einer ODER Bedingung zu machen, allerdings bring ich das nicht hin....
mein Versuch:
var a1 = s.split("->"|")");
Allerdings wird die ODER Bedingung hier ignoriert.
Hat jemand eine Idee was ich falsch mache? Oder muss ich im Nachhinein das Array mit einer Schleife durchgehen, den Split ausführen und dann das Array entsprechend umbauen!?
Danke
Tommy ??? ??? ???



Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.169
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: javascript split mit oder Bedingung
« Antwort #1 am: 11.09.12 - 08:11:43 »
Du kannst einen regulären Ausdruck als Parameter angeben.  Dieser darf nicht in " stehen:
arr = s.split(/a|b/)
Deine Sonderzeichen musst wahrscheinlich noch escapen:  /\-\-\>|\)/ (ohne Gewähr)

Gruß Roland
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.710
  • Geschlecht: Männlich
Re: javascript split mit oder Bedingung
« Antwort #2 am: 11.09.12 - 08:14:05 »
Code
var s = "Information vom 12.12.2012 --> weitere Information vom 13.12.2012 --> Alles funktioniert wieder (14.12.2012) zusatzliche Info vom 15.12.2012 -->";
s = s.replace("(","");
s.split(/[->)]+/);

ergibt dann das, was du wolltest ...

Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline thomson666

  • Senior Mitglied
  • ****
  • Beiträge: 285
  • Geschlecht: Männlich
  • niemand hats leicht, aber leicht hats oan...
Re: javascript split mit oder Bedingung
« Antwort #3 am: 11.09.12 - 08:50:41 »
Ok Danke ich probiers gleich aus und melde mich

ausprobiert und funktioniert...  ;D
Danke!

Die Sache ist aber leider noch nicht ganz gelöst...
Das Feld das ich auslese ist ein RichtextFeld, wenn Notes nun intern das RichTextfeld splittet bekomme ich leider nur die Werte des ersten RichTextFeldes
Muss ich mir die Werte des RichTextFeldes mit @Abstract oder so holen?
« Letzte Änderung: 11.09.12 - 08:58:39 von thomson666 »

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.710
  • Geschlecht: Männlich
Re: javascript split mit oder Bedingung
« Antwort #4 am: 11.09.12 - 09:39:28 »
ja, versuche mal mit @AbstractSimple() . Ist einfacher zu handhaben als @Abstract
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.710
  • Geschlecht: Männlich
Re: javascript split mit oder Bedingung
« Antwort #5 am: 11.09.12 - 12:23:00 »
Mal eine andere Frage. Die Statusinformationen werden doch irgendwo erzeugt. Warum wird ausgerechnet bei dem "Alles funktioniert wieder (14.12.2012)" um das Datum eine Klammer gesetzt. Sollte man nicht eher dort ansetzen und versuchen, die Meldungen in einem einheitlcihen Format zu erzeugen.
Ansonsten könnte man sich auch das Regex sparen und die ) durch das einheitliche Trennzeichen ersetzen.
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline thomson666

  • Senior Mitglied
  • ****
  • Beiträge: 285
  • Geschlecht: Männlich
  • niemand hats leicht, aber leicht hats oan...
Re: javascript split mit oder Bedingung
« Antwort #6 am: 17.09.12 - 07:55:05 »
jup, das schau ich mir gerade an.
Wäre natürlich die sauberste Lösung
Danke Trotzdem!
Tommy

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz