wie?? String auslesen und unötige stellen raus entfernen.

  • Hallo
    bin grade am verzweifeln wollte aus einer datenbank werte auslesen klappt ganz gut.
    nur nun das Problem.
    weiß nicht wie ich in der linie die ausgelsen wird die unötigen daten lösche
    so sieht die zeile aus:

    -hallo welt/ kugel
    das - soll entfernt werden
    und / und alles was dahinter steht soll entfernt werden ist der zeilen abschluss
    so das als ergebnis
    hallo welt
    stehen bleibt
    muss ich das zum array machen und die stellen suchen oder wie geht das am besten ?
    am besten ein beispiel posten bin praktiker lerne beim machen nicht beim lesen ;(

    Einmal editiert, zuletzt von Mogash (11. Juli 2008 um 01:09)

    • Offizieller Beitrag

    Es gibt mehrere Varianten. Wenn vorn immer ein "-" ist und ab "/" abgeschnitten werden soll, ist folgendes allgemeingültig:

    [autoit]

    $string = '-hallo welt/ kugel'
    $aErgebnis = StringRegExp($string, '(?<=-)[\w\säöüÄÖÜ]*',1)
    MsgBox(0, '', $aErgebnis[0])

    [/autoit]
  • Allgemeingültig ist es eher nicht. Dabei kann z.B. ? oder ß nicht vorkommen. So geht es bei mir :)

    Spoiler anzeigen
    [autoit]

    $string = '-hallo w?elt/ kugel'
    $aErgebnis = StringRegExp($string, '(?<=-)(.*)(?:/)',1)
    MsgBox(0, '', $aErgebnis[0])

    [/autoit]
  • sieht gut aus

    $string = '-hallo welt: kugel' <--- neues Problem mit doppel punkt
    $aErgebnis = StringRegExp($string, '(?<=-)[\w\säöüÄÖÜ]*',1)
    MsgBox(0, '', $aErgebnis[0])
    hab nun festgestellt das es am ende auch mal nen doppelpunkt gibt
    also hab ich hier nen doppelpunkt mit eingefügt
    $aErgebnis = StringRegExp($string, '(?<=-):[\w\säöüÄÖÜ]*',1)
    und schon geht nimmer grübel