Also ich haben diesen String,
D:\Spiele\FIFA 2008\bild.jpg
und ich will ihn so filtern, dass nur noch bild.jpg angezeigt wird.
Es soll nach dem dem letztenn \ getrennt werden, ich weis nicht wie viele / es giebt und nicht wie das Bild heist.
Hoffe jemand kann mir weiterhelfen
gruß energy
String trennen
-
- [ gelöst ]
-
energy -
6. Dezember 2007 um 12:08 -
Geschlossen -
Erledigt
-
-
- Offizieller Beitrag
Trennen von rechts machst du indem du negatives Vorzeichen angibst um die Position des letzten '\' zu finden.
Edit: Mist, es wird kein Code angezeigt. OK - dann unformatiert: -
danke bugfix, du bist mein held,
war schon langsam am verzweifeln. -
Hallo!
aus früheren autoi-Zeiten
Spoiler anzeigen
[autoit][/autoit] [autoit][/autoit] [autoit]; basename
[/autoit] [autoit][/autoit] [autoit]
; gibt den Dateinamen einzeln zurück oder im Fehlerfalle ".."Func _basename($FileLongPath)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]if FileExists($FileLongPath) then
[/autoit] [autoit][/autoit] [autoit]
$pruef1=_checkdirectory($FileLongPath)
if $pruef1=1 then
Return ".."
exit
EndIf$teile=StringSplit($FileLongPath,"\")
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
$anz=$teile[0]
Return $teile[$anz]Else
[/autoit] [autoit][/autoit] [autoit]
Return ".."Endif
[/autoit] [autoit][/autoit] [autoit]EndFunc
[/autoit] [autoit][/autoit] [autoit]; Test ob Datei
[/autoit] [autoit][/autoit] [autoit]
; Return 0 ist kein Verzeichnis oder Fehler
; Return 1 ist ein VerzeichnisFunc _checkdirectory($File)
[/autoit] [autoit][/autoit] [autoit]$attrib=FileGetAttrib($File)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
If @error Then
; MsgBox(4096,"Error", "Could not obtain attributes.")
Return 0
Else
If StringInStr($attrib, "D") Then
Return 1
Else
Return 0
EndIf
EndIfEndFunc
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit]Gruss
German
-
-
- Offizieller Beitrag
LOL
[autoit]
Unter Codeoptimierung verstehe ich eigentlich Vereinfachung und Verkürzung des Codes.
Schon interessant, wie mein 2-Zeiler, den ich der besseren Verständlichkeit wegen auf 3 Zeilen gestreckt habe, hier 'optimiert' wird
Also seis denn: hier die ganz-kurz-Fassung$path = 'D:\Spiele\FIFA 2008\bild.jpg'
[/autoit]
$name = StringRight($path, StringLen($path) - (StringInStr($path, '\', 1, -1)) )