bis 30.10 habe ich zeit dafür hilfe bitte

  • bin wirklich verzweifelt.. ich brauche unterstützung um aus einer datei mehrere strings auszulesen..
    und die in eine neue datei rein zu schreiben..

    also es soll so funktionieren das prog liest eine txt aus. das was hier dazwichen steht..
    das ist der anfang.: uid=m-1254843856">

    das steht dazwichen kann sich aber ändern bzw ändert sich.: hallowelt

    das daß ende des strings.: </a><br>

    es sind aber mehrere die er auslesen soll. und dann in eine txt eintragen soll wer kann mir da helfen..

    bitte bin am verzweifeln weil ich schon ein paar stunden dahinter klemme und jetzt ne denk blokade drinne haben bitte um hilfe..

  • ich behersche stringbetween nicht..
    deshalb habe ich immer wieder alles was ich hatte verworfen..

    brauche ja nur mal ein paar beispiele..
    habe bis jetzt nur das was er immer ausliest und in eine txt einträgt .. also die rohfassung.. und noch nicht das was er dann in eine neue txt eintragen soll..

  • Ich wüsste gerne, wofür du die Strings auslesen musst.
    Grob sollte das so funktionieren:

    [autoit]

    #include<Array.au3>
    $text = 'uid=m-1254843856">TEXT_TEXT_TEXT_TEXT_TEXT</a><br> uid=m-1254843856">?????????????</a><br> uid=m-1254843856">..........</a><br>'
    $aFound = StringRegExp($text, 'uid=m-1254843856">(?s)(.*?)</a><br>', 3)
    _ArrayDisplay($aFound)

    [/autoit]
  • bin gerade voll neben der spur bekomme gerade nix in meinen scheiß besch.. schädel rein..

    also ok versuch es so..

    in einer zeile der txt stehen mehrere strings.. mit dem anfang und dem ende .. bloß das in der mitte ändert sich..
    und das geht ein paar zeilen so weiter..

    will bloß das er die datei >test.txt< öffnet bzw ausliest die im gleichen ordner ist wo das script ist..
    also alles was ich schon beschreiben habe .. mit anfang und ende..was er dazwichen auslesen soll

    hier ein auszug aus der txt..
    hier farbisch was anfang ist ( rot) und was ende ist ( blau) und das dazwichen barauche ich immer.und soll in eine txt untereinander eingetragen werden.. das ist aber nur ein auszug.. aus der txt datei..


    Spoiler anzeigen

    <anp.php?uid=m-1254843856">miley</a><br><a onmouseover='showthumb("2009/43/4989944")' onmouseout=hidethumb(); np.php?uid=j-1240752026">juliia</a><br><a onmouseover='showthumb("2009/43/4989354")' onmouseout=hidethumb(); np.php?uid=l-1249386299">lilprincess</a><br><a onmouseover='showthumb("2009/32/4526694")' onmouseout=hidethumb(); /np.php?uid=s-1183828135">saxmy</a><br><a onmouseover='showthumb("2009/41/4906464")' onmouseout=hidethumb(); href="np.php?uid=s-1255176579">yteymma</a><br><a onmouseover='showthumb("2009/44/5010114")' onmouseout=hidethumb(); href="php?uid=l-1183819548"> llvirl</a><br>

  • So:

    [autoit]

    #include<Array.au3>
    $text = '<anp.php?uid=m-1254843856">miley</a><br><a onmouseover=''showthumb("2009/43/4989944")'' onmouseout=hidethumb(); np.php?uid=j-1240752026">juliia</a><br><a onmouseover=''showthumb("2009/43/4989354")'' onmouseout=hidethumb(); np.php?uid=l-1249386299">lilprincess</a><br><a onmouseover=''showthumb("2009/32/4526694")'' onmouseout=hidethumb(); /np.php?uid=s-1183828135">saxmy</a><br><a onmouseover=''showthumb("2009/41/4906464")'' onmouseout=hidethumb(); href="np.php?uid=s-1255176579">yteymma</a><br><a onmouseover=''showthumb("2009/44/5010114")'' onmouseout=hidethumb(); href="php?uid=l-1183819548"> llvirl</a><br> '
    $aFound = StringRegExp($text, '\?uid=\w+-\d+">(?s)(.*?)</a><br>', 3)
    _ArrayDisplay($aFound)

    [/autoit]


    Und §text kannst du auch aus nem FileRead bekommen, zum Schreiben z.B. _FileWriteFromArray ;)

  • ne glaube ihr versteht mich noch nicht ganz.. vieleicht reden wir an einander vorbei kann ja passieren..

    ich habe eine txt datei.. (test.txt)
    und in der steht das alles und noch mehr und die datei ändert sich immer..auch das was dazwichen steht..

    also sollte der ablauf so gehen..

    1) datei öffnen..
    2) alles auslesen in der datei wo dieser string ist also mit dem anfang und dem ende.
    3) das was er dazwichen ausgelesen hat in eine txt datei eintragen.

  • Hi.....

    [autoit]

    #include <Array.au3>
    $text=fileread("test.txt") ;datei einlesen
    $zeile=stringsplit($text,"</a><br>",3) ;$text in array splitten
    ;_arraydisplay($zeile)
    for $i=0 to ubound($zeile)-1
    $zeile[$i]=stringright($zeile[$i],stringlen($zeile[$i])-stringinstr($zeile[$i],">",0,-1)) ;am ende steht der Name vor dem >
    Next
    _arraydisplay($zeile)

    [/autoit]

    so?

  • Ich werde das jetzt nicht für dich schreiben...
    Nochmal:
    -Datei auslesen:

    [autoit]

    $text = FileRead("bla.html")

    [/autoit]


    -Teile rausschneiden: wie oben (der StringRegExp)
    -Neue Datei schreiben:

    [autoit]

    _FileWriteFromArray("gefunden.txt", $aFound)

    [/autoit]


    Damit solltest du weiterkommen ;)

  • Zitat

    das was er dazwichen ausgelesen hat in eine txt datei eintragen.

    da ich davon ausgehe daß progandys regex auch das selbe Ergebnis hat wie mein Script (*kicher*) und unverschämterweise wir BEIDE die letzte Zeile

    [autoit]

    _FileWriteFromArray("namen.txt",$zeile)

    [/autoit]

    vergessen hatten, hole ich das hiemit nach....

    /EDIT/ immer zweiter...... :D

  • habe es gelöst.. thx sagte ja bekomme gerade nix in meinen kopf rein...
    aber trotzdem konnte ich es schaffen..

    so nun problem 1 gelöst..
    nun problem 2 .. aber wie schaffe ich es das die araydispaly in eine txt eingetragen werden .. alles untereinander..?

    EDIT::: sry war zusangsam .. thx euch beiden

    er schreibt aber nix in die datei..!

    so weit bin ich..

    [autoit]

    Sleep(2000)

    [/autoit][autoit][/autoit][autoit]

    $text = FileRead ("test.txt")
    $aFound = StringRegExp($text, '\?uid=\w+-\d+">(?s)(.*?)</a><br>', 3)
    Sleep (2000)
    _ArrayDisplay($aFound)
    Sleep (1000)
    FileWrite("gefunden.txt", $aFound)

    [/autoit]
  • ok habe es so geschreiben ..

    hier..

    Spoiler anzeigen
    [autoit]

    Sleep(2000)

    [/autoit] [autoit][/autoit] [autoit]

    $text = FileRead ("test.txt")
    $aFound = StringRegExp($text, '\?uid=\w+-\d+">(?s)(.*?)</a><br>', 3)
    Sleep (2000)
    _ArrayDisplay($aFound)
    Sleep (1000)
    _FileWriteFromArray ("gefunden.txt", $aFound)

    [/autoit]

    und der fehler kommt..

    Spoiler anzeigen
    Code
    C:\Dokumente und Einstellungen\Administrator\Desktop\spambot für kneipe.au3(58,45) : ERROR: _FileWriteFromArray(): undefined function.
    _FileWriteFromArray ("gefunden.txt", $aFound)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Dokumente und Einstellungen\Administrator\Desktop\spambot für kneipe.au3 - 1 error(s), 0 warning(s)