IniRead bzw. IniReadSection Problem mit dem '=' als Delimiter, weil das '=' im Datensatz mehrfach vorkommt

  • Hallo zusammen,
    mal wieder eine Frage an das Forum hier, mit der Hoffnung auf einen Tip bzw. Rat

    Ich habe eine Datei, die mit lauter E-Mail artigen Namen zur Weiterverarbeitung genutzt werden soll (s. Bsp). Damit die lieben Userlein sich das schön anschauen können und ggf. Änderungen vorschlagen können, wäre eine Darstellung mittels ListView aus meiner Sicht gut.
    Das Problem ist jetzt, wenn ich diese Datensätze mittels GUICtrlCreateListView und IniReadSection in eine entsprechende GUI packen will, wird das erste '=' zum Trennen
    der Spalten (Columns) genommen.
    Frage: Kann ich darauf Einfluss nehmen und mittels, ich nenne es mal MASKIERUNG, das letzte '=' als Trennung bestimmen, sodass als Ergebnis sich Folgendes ergibt ?

    Col1 (Nummer) | Col2 (Name) | Col3 (ID)
    1 |CN=Phlipp Roesler/OU=FDP/OU=MdB/O=BRD | 123


    Ausgangsdatei:
    [test]
    CN=Phlipp Roesler/OU=FDP/OU=MdB/O=BRD = 123
    CN=Guido Westerwelle Pazic/OU=FDP/OU=MdB/O=BRD = 456
    CN=Horst Seehofer/OU=CSU/OU=MdB/O=BRD = 789
    CN=Angela Merkel/OU=CDU/OU=MdB/O=BRD = 101
    CN=Peer Steinbrueck/OU=SPD/OU=MdB/O=BRD = 112
    CN=Frank-Walther Steinmeier/OU=SPD/OU=MdB/O=BRD = 131
    CN=Christina Schroeder/OU=CDU/OU=MdB/O=BRD = 415
    CN=Claudia Roth/OU=Gruene90/OU=MdB/O=BRD = 161
    CN=Cem Oezdemir/OU=Gruene90/OU=MdB/O=BRD = 718


    P.S.
    Die GUI Erstellung bzw. ListView Erstellung ist nicht das Problem - das funktioniert schon.
    Wobei meine Befürchtung ist, dass das Trennzeichen rel. fix sein dürfte


    Danke
    mfg
    ugt100

    Einmal editiert, zuletzt von ugt100 (30. April 2013 um 08:20)

  • probier mal so :

    [autoit]


    Local $sFile = FileRead("file.ini")
    Local $aStrReg = StringRegExp($sFile,"(.+?)=(.+)=(.+)",3)
    ; Dann solltest du die Elemente in nem 1-dimensionalem Array haben und kannst es mit ner For-Schleife in die ListView eintragen

    [/autoit]
  • Hi Alcros,

    werde das versuchen, allerdings erst heute abend oder schlimmstenfalls morgen im Laufe des Tages - aber die Idee erscheint mir gut, so muesste/könnte es klappen.

    Danke schon mal


    Gruss
    ugt100

    :P:P:P

  • Hallo Alcros,
    dem geht so ... - sehr gute Idee.
    Ich habe den RegEx noch angepasst, damit ich solch eine 'Ergebniszeile' erhalte.

    1 | CN=Phlipp Roesler/OU=FDP/OU=MdB/O=BRD | 123

    alt
    StringRegExp($sFile,"(.+?)=(.+)=(.+)",3)

    neu
    Local $aStrReg = StringRegExp($sFile,"(.+?=.+=.+)=(.+)",3)

    Danke
    mfg
    ugt100 :rock::P:rock: