📄 14 - parsing urls.rb
字号:
require 'uri'URI.parse('https://www.example.com').scheme # => "https"URI.parse('http://www.example.com/').host # => "www.example.com"URI.parse('http://www.example.com:6060/').port # => 6060URI.parse('http://example.com/a/file.html').path # => "/a/file.html"#---URI.split('http://example.com/a/file.html')# => ["http", nil, "example.com", nil, nil, "/a/file.html", nil, nil, nil]#---URI::HTTP.component# => [:scheme, :userinfo, :host, :port, :path, :query, :fragment]URI::MailTo.component# => [:scheme, :to, :headers]#---URI::HTTP.build(:host => 'example.com', :path => '/a/file.html', :fragment => 'section_3').to_s# => "http://example.com/a/file.html#section_3"#---class URI::Generic def dump component.each do |m| puts "#{m}: #{send(m).inspect}" end endend#---url = 'http://leonardr:pw@www.subdomain.example.com:6060' + '/cgi-bin/mycgi.cgi?key1=val1#anchor'URI.parse(url).dump# scheme: "http"# userinfo: "leonardr:pw"# host: "www.subdomain.example.com"# port: 6060# path: "/cgi-bin/mycgi.cgi"# query: "key1=val1"# fragment: "anchor"#---URI::parse('ftp://leonardr:password@ftp.example.com/a/file.txt').dump# scheme: "ftp"# userinfo: "leonardr:password"# host: "ftp.example.com"# port: 21# path: "/a/file.txt"# typecode: nil#---uri = URI::parse('mailto:leonardr@example.com?Subject=Hello&body=Hi!')uri.dump# scheme: "mailto"# to: "leonardr@example.com"# headers: [["Subject", "Hello"], ["body", "Hi!"]]puts uri.to_mailtext# To: leonardr@example.com# Subject: Hello# # Hi!#---URI::parse("ldap://ldap.example.com").dump# scheme: "ldap"# host: "ldap.example.com"# port: 389# dn: nil# attributes: nil# scope: nil# filter: nil# extensions: nilURI::parse('ldap://ldap.example.com/o=Alice%20Exeter,c=US?extension').dump# scheme: "ldap"# host: "ldap.example.com"# port: 389# dn: "o=Alice%20Exeter,c=US"# attributes: "extension"# scope: nil# filter: nil# extensions: nil#---uri = URI.parse('tag:example.com,2006,my-tag')uri.scheme # => "tag"uri.opaque # => "example.com,2006,my-tag"#---uri = URI.parse('http://www.example.com/#anchor')uri.port = 8080uri.to_s # => "http://www.example.com:8080/#anchor"#---
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -