Es ist keine sehr große UDF, aber für Maps in Form von
1,2,3
1,5,2
9,4,2
ist es nützlich.
UDF:
[autoit]; #FUNCTION# ====================================================================================================================
; Name...........: _StringgetStr()
; Description ...: Gets a String out of String (e.g.: "1,2,3,4,5")
; Syntax.........: _StringgetStr($String,$Search,$index)
; Parameters ....: $String - String to search in
; $Search - Character (e.g.: ",")
; $index - What Stringnumber should be returned
; Return values .: String of index with search
; Author ........: TheShadowAE
; ===============================================================================================================================
Func _StringgetStr($String,$Search,$index)
$old=0
$mom=0
$isindex=0
For $x=0 To $index
$isindex=$isindex+1
$old=$mom
$mom=StringInStr($String,$Search,0,1,$old+1)
If $mom=0 Or $isindex=$index Then ExitLoop
Next
If $mom=0 And $isindex<>$index Then
Return ""
ElseIf $mom=0 And $isindex=$index Then
$restring=StringMid($String,$old+1)
Return $restring
Else
$restring=StringMid($String,$old+1,$mom-$old-1)
Return $restring
EndIf
EndFunc
Beispiel:
[autoit]#include <_stringgetstr.au3>
msgbox(0,"",_StringgetStr("1,2,3,4,5",",",1))
msgbox(0,"",_StringgetStr("1,2,3,4,5",",",2))
msgbox(0,"",_StringgetStr("1,2,3,4,5",",",3))
msgbox(0,"",_StringgetStr("1,2,3,4,5",",",4))
msgbox(0,"",_StringgetStr("1,2,3,4,5",",",5))
Ich weiß leider auch nicht, ob es sowas schon z.B. in der String.au3 gibt.