URL parser: Difference between revisions

m
→‎{{header|Groovy}}: cosmetic changes
(→‎{{header|Groovy}}: Initial solution)
m (→‎{{header|Groovy}}: cosmetic changes)
Line 579:
 
// Results displayed here
println "\nParsing $url""
println "\tscheme = |Parsing ${u.scheme}url"
println "\tdomain | scheme = ${u.hostscheme}"
println "\tport = ${(u.port +| 1) ? u.port :domain 'default' = ${u.host}"
println "\tpath | port = ${(u.pathport + 1) ?: u.schemeSpecificPartport : 'default' }"
println "\tquery | path = ${u.querypath ?: u.schemeSpecificPart}"
println "\tfragment | query = ${u.fragmentquery}"
| fragment = ${u.fragment}""".stripMargin()
}</lang>
 
Output:
<pre style="height:30ex;overflow:scroll;">
Parsing foo://example.com:8042/over/there?name=ferret#nose"
scheme = foo"
domain = example.com"
port = 8042"
path = /over/there"
query = name=ferret"
fragment = nose
 
Parsing urn:example:animal:ferret:nose"
scheme = urn"
domain = null"
port = default"
path = example:animal:ferret:nose"
query = null"
fragment = null
 
Parsing jdbc:mysql://test_user:ouupppssss@localhost:3306/sakila?profileSQL=true"
scheme = jdbc"
domain = null"
port = default"
path = mysql://test_user:ouupppssss@localhost:3306/sakila?profileSQL=true"
query = null"
fragment = null
 
Parsing ftp://ftp.is.co.za/rfc/rfc1808.txt"
scheme = ftp"
domain = ftp.is.co.za"
port = default"
path = /rfc/rfc1808.txt"
query = null"
fragment = null
 
Parsing http://www.ietf.org/rfc/rfc2396.txt#header1"
scheme = http"
domain = www.ietf.org"
port = default"
path = /rfc/rfc2396.txt"
query = null"
fragment = header1
 
Parsing ldap://[2001:db8::7]/c=GB?objectClass=one&objectClass=two"
scheme = ldap"
domain = [2001:db8::7]"
port = default"
path = /c=GB"
query = objectClass=one&objectClass=two"
fragment = null
 
Parsing mailto:John.Doe@example.com"
scheme = mailto"
domain = null"
port = default"
path = John.Doe@example.com"
query = null"
fragment = null
 
Parsing news:comp.infosystems.www.servers.unix"
scheme = news"
domain = null"
port = default"
path = comp.infosystems.www.servers.unix"
query = null"
fragment = null
 
Parsing tel:+1-816-555-1212"
scheme = tel"
domain = null"
port = default"
path = +1-816-555-1212"
query = null"
fragment = null
 
Parsing telnet://192.0.2.16:80/"
scheme = telnet"
domain = 192.0.2.16"
port = 80"
path = /"
query = null"
fragment = null
 
Parsing urn:oasis:names:specification:docbook:dtd:xml:4.1.2"
scheme = urn"
domain = null"
port = default"
path = oasis:names:specification:docbook:dtd:xml:4.1.2"
query = null"
fragment = null</pre>
 
=={{header|Haskell}}==
Anonymous user