I share a simple routine that allows you to extract the structure of a URL.
Note:
In the "path" section it allows you to extract the parameters of the pretty URL and "parameters" those of a normal URL.
See the examples
URL tests
Routine
Output: Url Normal
Url Pretty
Ref:
developer.mozilla.org
Your comments are welcome.
Regards
Note:
In the "path" section it allows you to extract the parameters of the pretty URL and "parameters" those of a normal URL.
See the examples
URL tests
B4X:
Dim URL As String = "https://www.example.com:80/page?param1=value1¶m2=value2"
Dim URL As String = "https://www.b4x.com/android/forum/whats-new/posts/3584726/"
Dim URL As String = "https://translate.google.com/?hl=es&sl=en&tl=es&text=Extract%20the%20structure%20of%20a%20URL&op=translate"
Dim m As Map = ExtractURLStruct(URL)
For Each Key As String In m.Keys
Log(Key & " : " & m.Get(Key))
Next
Log(" ----- Path ----- ")
For Each Value As String In Regex.Split("/", m.Get("path"))
If Value.Length = 0 Then Continue
Log(Value)
Next
Log(" ----- Parameters ----- ")
For Each Parameters As String In Regex.Split("&", m.Get("parameters"))
Dim Pair() As String = Regex.Split("=", Parameters)
If Pair.Length = 2 Then
Log(Pair(0) & " : " & Pair(1))
End If
Next
Routine
B4X:
Public Sub ExtractURLStruct(URL As String) As Map
Dim Pattern As String = $"^([^:\/?#]+):\/\/([^\/:]+)(?::(\d+))?(\/[^?#]*)?(?:\?([^#]*))?(?:#(.*))?"$
Dim Matcher As Matcher = Regex.Matcher(Pattern, URL)
Dim Result As Map : Result.Initialize
If Matcher.Find Then
Result.Put("url", Matcher.Group(0))
Result.Put("scheme", Matcher.Group(1))
Result.Put("domain", Matcher.Group(2))
Result.Put("port", Matcher.Group(3))
Result.Put("path", Matcher.Group(4))
Result.Put("parameters",Matcher.Group(5))
Result.Put("anchor", Matcher.Group(6))
End If
Return Result
End Sub
Output: Url Normal
Url Pretty
Ref:
![developer.mozilla.org](/android/forum/proxy.php?image=https%3A%2F%2Fdeveloper.mozilla.org%2Fmdn-social-share.cd6c4a5a.png&hash=5d7926cfdc5d54caec8f08032cfd2141&return_error=1)
What is a URL? - Learn web development | MDN
A URL (Uniform Resource Locator) is the address of a unique resource on the internet. It is one of the key mechanisms used by browsers to retrieve published resources, such as HTML pages, CSS documents, images, and so on.
![developer.mozilla.org](/android/forum/proxy.php?image=https%3A%2F%2Fdeveloper.mozilla.org%2Ffavicon-48x48.cbbd161b.png&hash=e8eaf196d752bb658ec012764973cd59&return_error=1)
Your comments are welcome.
Regards