함수 urlencode()

1 개요[ | ]

urlencode
urllib.quote_plus
이 목적이라면 함수 rawurlencode()를 사용해도 됨
입력값 출력값
(space) +
/ %2F
% %25

2 Bash[ | ]

with Python
Bash
Copy
input='hello 123 http://zetawiki.com 한글'
output=`python -c "import urllib; print urllib.quote_plus('''$input''')"`
echo $output
# hello+123+http%3A%2F%2Fzetawiki.com+%ED%95%9C%EA%B8%80
with PHP
Bash
Copy
input='hello 123 http://zetawiki.com 한글'
output=`php -r "echo urlencode('$input');"`
echo $output
# hello+123+http%3A%2F%2Fzetawiki.com+%ED%95%9C%EA%B8%80

3 Java[ | ]

Java
Copy
String input = "hello 123 http://zetawiki.com 한글";
String encoded = URLEncoder.encode(input, "UTF-8");

System.out.println(encoded);
// hello+123+http%3A%2F%2Fzetawiki.com+%ED%95%9C%EA%B8%80

4 JavaScript[ | ]

JavaScript
Copy
function urlencode(str) {
  return encodeURIComponent(str+'').replace(/!/g, '%21').replace(/'/g, '%27').replace(/\(/g, '%28').replace(/\)/g, '%29').replace(/\*/g, '%2A').replace(/%20/g, '+');
}

5 PHP[ | ]

PHP
Copy
echo urlencode('개요');
# %EA%B0%9C%EC%9A%94
echo urlencode('hello 123 http://zetawiki.com 한글');
# hello+123+http%3A%2F%2Fzetawiki.com+%ED%95%9C%EA%B8%80

6 Python[ | ]

Python 2
Python
Copy
# -*- coding: utf-8 -*-
import urllib
print urllib.quote_plus('hello 123 http://zetawiki.com 한글')
# hello+123+http%3A%2F%2Fzetawiki.com+%ED%95%9C%EA%B8%80

7 R[ | ]

R
Copy
# Windows (CP949) 예시
s <- 'hello 123 http://zetawiki.com 한글'
gsub('%20','+',URLencode(iconv(s,'CP949','UTF-8'),reserved=T))
## [1] "hello+123+http%3A%2F%2Fzetawiki.com+%ED%95%9C%EA%B8%80"

8 같이 보기[ | ]