2010-12-06 216 views
2

我已經提到兩個:希伯來語「URL編碼」在R?

?URLencode 
#and 
?curlEscape 

我看到這兩個功能對英語工作的偉大,但不能用正確的翻譯希伯來文字符提供。

例如,字

שלום

(和平,希伯來文) 應該是這樣的:

%D7%A9%D7%9C%D7% 95%D7%9D

但是相反,兩個命令transl吃它到:

URLencode("שלום") 
%f9%ec%e5%ed 

你有什麼建議? (寫我自己,或者是有什麼預發)

感謝, 塔爾

更新:我sessionInfo:

> sessionInfo() 
R version 2.12.0 (2010-10-15) 
Platform: i386-pc-mingw32/i386 (32-bit) 

locale: 
[1] LC_COLLATE=Hebrew_Israel.1255 LC_CTYPE=Hebrew_Israel.1255 
[3] LC_MONETARY=Hebrew_Israel.1255 LC_NUMERIC=C     
[5] LC_TIME=Hebrew_Israel.1255  

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods base  
+1

對我也適用Tal。我使用enGB.utf8語言環境在Linux上運行R2.12修補程序。 – 2010-12-07 09:29:19

+0

o.k,我發現錯誤是在我的本地使用。謝謝! – 2010-12-07 11:38:42

回答

4

雙方的URLEncode和charToRaw似乎爲我工作...

的URLEncode( 「שלום」)
[1] 「%D7%A9%D7%9C%D7%95%D7%9D」

綜觀的URLEncode的源代碼

的URLEncode
功能(URL,保留= FALSE)
{
行< - 糊( 「[^ - ABCDEFGHIJKLMNOPQRSTUVWXYZ」
「abcdefghijklmnopqrstuvwxyz(!reserved)
「; /?:@ = &」,「]」,sep =「」)
X < - strsplit(URL, 「」)[[1L]]
ž< - grep的(OK,X)
如果(長度(Z)){
ý< - sapply(X [Z],功能(x)粘貼(「%」,as。字符(charToRaw(X)),
月= 「」,崩= 「」))
X [Z] < - ý
}
膏(X,崩= 「」)
}

charToRaw( 「שלום」)
[1] D7 A9 D7 9C D7 95 D7 9D

您使用的其中R的版本?

這是我的sessionInfo()

sessionInfo()
ř版本2.10.0(2009-10-26)
I386-PC-的mingw32

區域設置:
[1] LC_COLLATE = English_United States.1252 LC_CTYPE = English_United States.1252 LC_MONETARY = English_United States.1252
[4] LC_NUMERIC = C = LC_TIME English_United States.1252


個附基礎包:
[1]統計圖形grDevices utils的數據集的方法基礎


其他附包:
[1] preprocessCore_1.8.0

經由一個命名空間加載(和未附):
[1] tools_2.10.0