R中的希伯来语“URL编码”?

时间:2010-12-06 21:46:39

标签: r urlencode url-encoding

我被引用了两个:

?URLencode
#and
?curlEscape

我发现这两个功能对英语都很有用,但未能为希伯来字符提供正确的翻译。

例如,单词

  

שלום

(和平,希伯来语) 应该是这样的:

  

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

但是,两个命令都将其转换为:

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 个答案:

答案 0 :(得分:4)

URLencode和charToRaw似乎对我有用......

  

的URLEncode( “שלום”)
  [1]“%d7%a9%d7%9c%d7%95%d7%9d”

查看URLencode的源代码

  

的URLEncode
  功能(URL,保留= FALSE)
  {
      OK< - paste(“[^ - ABCDEFGHIJKLMNOPQRSTUVWXYZ”,
“abcdefghijklmnopqrstuvwxyz0123456789 $ _。+!*'(),”,
          if(!reserved)
              “; /?:@ =&”,“]”,sep =“”)
      x< -strsplit(URL,“”)[[1L]]
      z< - grep(好的,x)
      if(length(z)){
          y< - sapply(x [z],function(x)paste(“%”,as.character(charToRaw(x)),
              sep =“”,collapse =“”)))           x [z]< - y
      }
      粘贴(x,collapse =“”)
  }
  

     

charToRaw( “שלום”)
  [1] d7 a9 d7 9c d7 95 d7 9d

您使用的是哪个版本的R?

这是我的sessionInfo()

sessionInfo()
R版本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] stats graphics grDevices utils数据集方法库


其他附件包:
[1] preprocessCore_1.8.0

通过命名空间加载(而不是附加):
[1] tools_2.10.0