Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
54
Task/URL-parser/Julia/url-parser.julia
Normal file
54
Task/URL-parser/Julia/url-parser.julia
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
using Printf, URIParser
|
||||
|
||||
const FIELDS = names(URI)
|
||||
|
||||
function detailview(uri::URI, indentlen::Int=4)
|
||||
indent = " "^indentlen
|
||||
s = String[]
|
||||
for f in FIELDS
|
||||
d = string(getfield(uri, f))
|
||||
!isempty(d) || continue
|
||||
f != :port || d != "0" || continue
|
||||
push!(s, @sprintf("%s%s: %s", indent, string(f), d))
|
||||
end
|
||||
join(s, "\n")
|
||||
end
|
||||
|
||||
test = ["foo://example.com:8042/over/there?name=ferret#nose",
|
||||
"urn:example:animal:ferret:nose",
|
||||
"jdbc:mysql://test_user:ouupppssss@localhost:3306/sakila?profileSQL=true",
|
||||
"ftp://ftp.is.co.za/rfc/rfc1808.txt",
|
||||
"http://www.ietf.org/rfc/rfc2396.txt#header1",
|
||||
"ldap://[2001:db8::7]/c=GB?objectClass=one&objectClass=two",
|
||||
"mailto:John.Doe@example.com",
|
||||
"news:comp.infosystems.www.servers.unix",
|
||||
"tel:+1-816-555-1212",
|
||||
"telnet://192.0.2.16:80/",
|
||||
"urn:oasis:names:specification:docbook:dtd:xml:4.1.2",
|
||||
"This is not a URI!",
|
||||
"ssh://alice@example.com",
|
||||
"https://bob:pass@example.com/place",
|
||||
"http://example.com/?a=1&b=2+2&c=3&c=4&d=%65%6e%63%6F%64%65%64"]
|
||||
|
||||
isfirst = true
|
||||
for st in test
|
||||
if isfirst
|
||||
isfirst = false
|
||||
else
|
||||
println()
|
||||
end
|
||||
println("Attempting to parse\n \"", st, "\" as a URI:")
|
||||
uri = try
|
||||
URI(st)
|
||||
catch
|
||||
println("URIParser failed to parse this URI, is it OK?")
|
||||
continue
|
||||
end
|
||||
print("This URI is parsable ")
|
||||
if isvalid(uri)
|
||||
println("and appears to be valid.")
|
||||
else
|
||||
println("but may be invalid.")
|
||||
end
|
||||
println(detailview(uri))
|
||||
end
|
||||
Loading…
Add table
Add a link
Reference in a new issue