반응형
URL 인코딩 된 URL에 추가 할 구문 분석 문자열
주어진 문자열 :
"Hello there world"
다음과 같이 URL 인코딩 문자열을 어떻게 만들 수 있습니까?
"Hello%20there%20world"
또한 문자열에 다음과 같은 다른 기호가있는 경우 어떻게해야하는지 알고 싶습니다.
"hello there: world, how are you"
그렇게하는 가장 쉬운 방법은 무엇입니까? 나는 파싱하고 그것을위한 코드를 만들려고했다.
require 'uri'
URI.encode("Hello there world")
#=> "Hello%20there%20world"
URI.encode("hello there: world, how are you")
#=> "hello%20there:%20world,%20how%20are%20you"
URI.decode("Hello%20there%20world")
#=> "Hello there world"
Ruby의 URI 는이를 위해 유용합니다. 프로그래밍 방식으로 전체 URL을 빌드하고 해당 클래스를 사용하여 쿼리 매개 변수를 추가하면 인코딩이 자동으로 처리됩니다.
require 'uri'
uri = URI.parse('http://foo.com')
uri.query = URI.encode_www_form(
's' => "Hello there world"
)
uri.to_s # => "http://foo.com?s=Hello+there+world"
예제는 유용합니다.
URI.encode_www_form([["q", "ruby"], ["lang", "en"]])
#=> "q=ruby&lang=en"
URI.encode_www_form("q" => "ruby", "lang" => "en")
#=> "q=ruby&lang=en"
URI.encode_www_form("q" => ["ruby", "perl"], "lang" => "en")
#=> "q=ruby&q=perl&lang=en"
URI.encode_www_form([["q", "ruby"], ["q", "perl"], ["lang", "en"]])
#=> "q=ruby&q=perl&lang=en"
다음 링크도 유용 할 수 있습니다.
- 공백을 플러스 (+) 또는 % 20으로 인코딩 할시기는 언제입니까?
- 공백 문자를 인코딩하는 URL : + 또는 % 20?
- 17.13.4 W3의 "HTML 문서의 양식"권장 사항에있는 양식 콘텐츠 유형 .
현재 답변은 URI.encode
Ruby 1.9.2 이후로 더 이상 사용되지 않고 더 이상 사용되지 않는 것을 활용 하도록 말합니다 . CGI.escape
또는 을 사용하는 것이 좋습니다 ERB::Util.url_encode
.
관심이있는 사람이 있다면 가장 새로운 방법은 ERB에서하는 것입니다.
<%= u "Hello World !" %>
다음과 같이 렌더링됩니다.
안녕하세요 % 20World % 20 % 21
u 는 url_encode의 약자입니다.
여기 에서 문서를 찾을 수 있습니다.
참고 URL : https://stackoverflow.com/questions/17375947/parsing-string-to-add-to-url-encoded-url
반응형
'UFO ET IT' 카테고리의 다른 글
CSS 테이블 td 너비-고정, 유연하지 않음 (0) | 2020.11.19 |
---|---|
L1 및 L2 캐시의 라인 크기 (0) | 2020.11.19 |
여러 작업을 실행하는 Gradle 사용자 지정 작업 (0) | 2020.11.19 |
전역 변수를 사용하지 않고 다른 함수의 변수에 액세스 (0) | 2020.11.19 |
SQL Server에서 밀리 초가 손실되는 이유는 무엇입니까? (0) | 2020.11.19 |