如何摆脱百分比符号'%'在r?

时间:2016-10-24 05:40:57

标签: r escaping special-characters

在网址中,我正在处理特殊字符' '我应该作为一个字符串传递。网址包含一些argumnents所以我使用sprintf.如何逃避符号' '在r?

start <- 1
#%s is my variable
url<-(sprintf('https://www.amazon.com/s/ref=sr_pg_%s?rh=n%3A172282%2Cn%3A%21493964%2Cn%3A502394%2Cn%3A281052%2Cn%3A12556502011%2Cn%3A3017941&page=%s&ie=UTF8', start, start))
  

格式无效&#39;%2Cn%3A&#39 ;;将格式%s用于角色对象

1 个答案:

答案 0 :(得分:11)

作为$pdf = App::make('dompdf.wrapper'); $pdf->loadHTML($message); return $pdf->download($file_name); 状态的帮助文件:

  

C函数sprintf的包装器,......

因此,您在sprintf中以与R相同的方式对其进行转义,使用双倍前置符号C生成一个%%,按照

How to escape sprintf() % marks so they wont be recognized as variables?

在您的代码中,我们会生成一个网址,可能会在此amazon.com搜索中提取第一页:

%

产生

url<-(sprintf('https://www.amazon.com/s/ref=sr_pg_%s?rh=n%%3‌​A172282%%2Cn%%3A%%21‌​493964%%2Cn%%3A50239‌​4%%2Cn%%3A281052%%2C‌​n%%3A12556502011%%2C‌​n%%3A3017941&page=%s‌​&ie=UTF8', start, start))