Zerteilt eine Url in seine Bestandteile.
Falls euch ein besser RegExp Pattern einfällt einfach antworten.
Spoiler anzeigen
; #FUNCTION# ;===============================================================================
;
; Name...........: _InetParseUrl
; Description ...: Returns the Url splitted in his parts
; Syntax.........: __InetParseUrl($sUrl)
; Parameters ....: $sUrl - A valid url like
; 'http://subdomain.test-test.museum:8080/sbaiudsof/sdfsdfg-dgs/test.php?test=test&test2=test2#haha'
; Return values .: Success - Array
; Failure - Returns 0 and Sets @Error
; See StringRegExp
; Author ........: Tom Schuster
; Modified.......:
; Remarks .......:
; Related .......:
; Link ..........;
; Example .......; No
;
; ;==========================================================================================
Func _InetParseUrl ( $sUrl )
[/autoit] [autoit][/autoit] [autoit]$avSplittedUrl = StringRegExp ( $sURL, '([a-zA-Z]+):\/\/([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+([a-zA-Z]{2,9})(:\d{1,4})?(\/.*\/)?([^?#]*)?(\?[^#]*)?(#.*)?',1)
[/autoit] [autoit][/autoit] [autoit]if @error Then
Return SetError ( 1, 0, 0)
EndIf
$sScheme = $avSplittedUrl[0]
$SHost = StringTrimRight ($avSplittedUrl[1], 1 )
$sDomain = $avSplittedUrl[2]
$sPort = StringTrimLeft ( $avSplittedUrl[3], 1 )
$sPath = StringTrimRight ( $avSplittedUrl[4], 1)
$sFile = $avSplittedUrl[5]
$sQuery = StringTrimLeft ( $avSplittedUrl[6], 1)
$sFragment = StringTrimLeft ( $avSplittedUrl[7], 1)
dim $asReturnArray[8] = [$sScheme,$sHost,$sDomain,$sPort,$sPath,$sFile,$sQuery,$sFragment]
[/autoit] [autoit][/autoit] [autoit]return $asReturnArray
[/autoit] [autoit][/autoit] [autoit]EndFunc
[/autoit]