text in 500er zeichenketten teilen

  • ich habe volgendes vor.
    ich möchte zuerst mal auslesen wieviele zeichen in einem textfeld sind, mit StringLen
    das hab ich schonmal geschafft
    ich möchte den text nun so aufteilen das maximal 500 zeichen in einer variable stehn
    ich kann innsgesammt höchstens 1500 zeichen schreiben
    wenn es aber nur 1000 sind soll es so aufgeteilt sein:
    variable1: 500 zeichen
    variable2: 500 zeichen
    variable3: 0 zeichen
    also erst wenn die erste variable voll ist, soll in die nächste geschrieben werden

    eigentlich scheiterts nur daran dass ich nciht weiß wie ich einen text den ich aus einer edit ausgelesen habe in 1 2 oder 3 teile teile

  • Hi,

    hier mal die allgemeingültige Variante:

    Spoiler anzeigen
    [autoit]

    #include-once
    #include <Array.au3>

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

    Global $as_array = _StringSplitCount("Dieser String wird alle fünf Zeichen gesplittet!", 5)
    _ArrayDisplay($as_array, "_StringSplitCount")

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

    ;~ Author: teh_hahn
    Func _StringSplitCount(Const $S_TEXT, Const $I_COUNT)
    If Not StringLen($S_TEXT) Then Return SetError(1, 0, 0)
    Local $as_ret[1] = [1], $s_tmp = "", $i_start = 1
    While 1
    $s_tmp = StringMid($S_TEXT, $i_start, $I_COUNT)
    If Not $s_tmp Then ExitLoop
    ReDim $as_ret[$as_ret[0] + 1]
    $as_ret[$as_ret[0]] = $s_tmp
    $as_ret[0] += 1
    $i_start += $I_COUNT
    WEnd
    $as_ret[0] -= 1

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

    Return $as_ret
    EndFunc ;==>_StringSplitCount

    [/autoit]