Autor Thema: Listen und Formula  (Gelesen 1985 mal)

Offline boemitsu

  • Aktives Mitglied
  • ***
  • Beiträge: 190
  • What goes around comes around
Listen und Formula
« am: 27.07.06 - 13:12:31 »
Hi,

Ausgehend von diesem Thread habe ich mir die Frage gestellt, obs irgendwie möglich ist, folgende Aufgabe ohne Schleife zu bewältigen:

Liste:
ABC
DFG
8HI
9JK
XYZ

Die resultierende Liste sollte nur diejenigen Elemente enthalten, die mit einer Zahl beginnen.

Gruss

Michael

Offline dirk_2909

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.173
  • Geschlecht: Männlich
  • Expand your Notes Client with ECM functionality..
    • d.velop
Re: Listen und Formula
« Antwort #1 am: 27.07.06 - 13:37:38 »

Nur ein Versuch:

Code
_lst := MeinFeldMitListe ;

_new := @ReplaceSubstring( _lst ; "0" : "1" ....... : "9" ; "~~" ) ;

_lst2 := @Left( _new ; "~~" ) ;

_lst3 := @Left( _lst ; 1 ) ;

_lst4 := @Trim( @ReplaceSubstring( @UpperCase( _lst3 ) ; "A" : "B" ..... : "Z" ; "" ) ) ;

_wert := _lst4 + _lst2 ;

_wert

Nur ein Versuch ohne jeglichen Test !!!

Aber warum keine Schleife??  ???  :-:
Dirk

[IBM CLP R5]
[IBM CAD 6/6.5]
[IBM CAD 7]
[IBM CAD 8]


"Nein!! … Es genügt nicht Mails in einen anderen Ordner oder Datenbank zu verschieben, um sie zu archivieren!"

   
Disclaimer:
Ich Antworte nach besten Wissen und Gewissen. Sollte sich jemand durch meine Antwort persönlich angegriffen fühlen, ist dies nicht meine Absicht!
Ich bin auch nur ein Mensch, der Fehler machen kann. ....

Offline boemitsu

  • Aktives Mitglied
  • ***
  • Beiträge: 190
  • What goes around comes around
Re: Listen und Formula
« Antwort #2 am: 27.07.06 - 13:47:56 »
Weil es möglicherweise einen Weg gibt, den ich nicht kenne, der aber effizient und elegant zugleich wäre...

Dachte an eine ähnliche Lösung wie Antwort 3 in diesem Post....



Gruss

Michael

Offline dirk_2909

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.173
  • Geschlecht: Männlich
  • Expand your Notes Client with ECM functionality..
    • d.velop
Re: Listen und Formula
« Antwort #3 am: 27.07.06 - 14:01:54 »
Es ist eine "ähnliche" Lösung !

Aber in Deinem Fall ist kein einheitlicher String in den einzelnen Elementen vorhanden, um einen
bestimmten Wert Rechts oder Links zu extrahieren.

Mit einer Schleife geht es besser  :-:
Dirk

[IBM CLP R5]
[IBM CAD 6/6.5]
[IBM CAD 7]
[IBM CAD 8]


"Nein!! … Es genügt nicht Mails in einen anderen Ordner oder Datenbank zu verschieben, um sie zu archivieren!"

   
Disclaimer:
Ich Antworte nach besten Wissen und Gewissen. Sollte sich jemand durch meine Antwort persönlich angegriffen fühlen, ist dies nicht meine Absicht!
Ich bin auch nur ein Mensch, der Fehler machen kann. ....

Offline boemitsu

  • Aktives Mitglied
  • ***
  • Beiträge: 190
  • What goes around comes around
Re: Listen und Formula
« Antwort #4 am: 27.07.06 - 14:14:13 »
Aber in Deinem Fall ist kein einheitlicher String in den einzelnen Elementen vorhanden, um einen
bestimmten Wert Rechts oder Links zu extrahieren.

Das ist mir bewusst, aber eben, vielleicht hätte es ja einen anderen Weg gegeben...

Die Schleife mit Bedingung ist natürlich auch nicht so böse... ; )

Besten dank und schöne Tag noch
Gruss

Michael

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: Listen und Formula
« Antwort #5 am: 27.07.06 - 14:17:50 »
Es geht deutlich "einfacher" (Einzeiler für das reine doing) und ohne Schleife:
Code
Liste := "ABC":"DEF":"8HI":"9ER":"XYZ";
Liste_Neu := @Trim(@Transform(Liste;"ListElement";@If(@Contains(@Left(ListElement;1);"0":"1":"2":"3":"4":"5":"6":"7":"8":"9");"";ListElement)));
@Prompt([Ok];"Was kommt da denn raus??";@Implode(Liste_Neu;"*"));

Formula Rulez  8)  O0

Der @Transform ist übrigens was das Verarbeiten von Listen angeht wirklich nicht von schlechten Eltern ....

Interessant wäre es auch das so zu schreiben:
Code
Liste := "ABC":"DEF":"8HI":"9ER":"XYZ";
Liste_Neu := @Transform(Liste;"ListElement";@If(@IsNumber(@integer(@Left(ListElement;1)));""; ListElement));
@Prompt([Ok];"Was kommt da denn raus???";@Implode(Liste_Neu;"*"));
Aber da meckert er rum, egal ob man jetzt @textToNumber oder @integer nimmt. Scheinbar funkioniert hier @isnumber nicht richtig.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline dirk_2909

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.173
  • Geschlecht: Männlich
  • Expand your Notes Client with ECM functionality..
    • d.velop
Re: Listen und Formula
« Antwort #6 am: 27.07.06 - 14:25:38 »
@Thomas

 ;D @Transform  :-[ Damit habe ich noch nie gearbeitet.
Hätte meine Arbeit öfters erleichtert  ::)

Das kommt davon, wenn man die Formelsprache vor Version 6 lernt und die Neuerungen nicht lernt  :-[

Man lernt immer dazu....
Dirk

[IBM CLP R5]
[IBM CAD 6/6.5]
[IBM CAD 7]
[IBM CAD 8]


"Nein!! … Es genügt nicht Mails in einen anderen Ordner oder Datenbank zu verschieben, um sie zu archivieren!"

   
Disclaimer:
Ich Antworte nach besten Wissen und Gewissen. Sollte sich jemand durch meine Antwort persönlich angegriffen fühlen, ist dies nicht meine Absicht!
Ich bin auch nur ein Mensch, der Fehler machen kann. ....

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: Listen und Formula
« Antwort #7 am: 27.07.06 - 14:39:13 »
Da hast du mich gerade noch an was erinnert. Damit kann man dann auch das @trim weglassen:
Code
Liste_Neu := @Transform(Liste;"ListElement";@If(@Contains(@Left(ListElement;1);"0":"1":"2":"3":"4":"5":"6":"7":"8":"9");@nothing;ListElement));
@nothing, auch so eine "neue" Funktion unter V6.
« Letzte Änderung: 27.07.06 - 14:51:31 von Thomas Schulte »
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline boemitsu

  • Aktives Mitglied
  • ***
  • Beiträge: 190
  • What goes around comes around
Re: Listen und Formula
« Antwort #8 am: 27.07.06 - 14:46:18 »
Cool... !

Besten Dank

Gruss

Michael

Offline DerAndre

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.655
  • Geschlecht: Männlich
  • Keep cool!
Re: Listen und Formula
« Antwort #9 am: 27.07.06 - 15:54:26 »
[Offtopic]

Ich glaub ich muss den Formeln noch eine Extra-Runde gönnen...  O0

Thomas ist wohl der König der Formeln.  8)

[\Offtopic]

André
André

Elterninitiative diabetischer Kinder und Jugendlicher e.V.
-----------------------------------------------------------------------------
Fliegen ist die Kunst auf den Boden zu Fallen, aber daneben.
-----------------------------------------------------------------------------
Etwas mehr Hardware dazu zu kaufen ist viel billiger als
Software besser zu machen. ( Niklaus Wirth )

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz