如何在ruby 1.8.7中将网页撇号(')转换为ascii 39

时间:2010-05-11 17:01:59

标签: ruby

这就是它。我正在使用Nokogiri来抓取一个网页,其中包括’其中的字符,我无法弄清楚如何进行转换。这是我试过的:

str.gsub(/’/,"'")  
str.gsub("’","'")  
str.gsub("ΓÇÖ","'") # that's how it looks when I do a puts

(在上面,&amp;#8217和“;”之间没有空格,但是如果我不把空间放进去,那么将它转换成撇号 - 残忍,残酷的讽刺!)< / p>

我确信这在某个地方有所涉及,但无法在此处或在网络上找到解决方案。

TIA

1 个答案:

答案 0 :(得分:2)

str.gsub(“\ 342 \ 200 \ 231”,“'”)应该有效

我得到了这个:
'''。to_s输出“\ 342 \ 200 \ 231”

可替换的其他html字符(http://ask.metafilter.com/62656/Eliminating-odd-characters-from-web-site):

<\ n>“\ 342 \ 200 \ 176” - “”“ “\ 342 \ 200 \ 177” - “'”
“\ 342 \ 200 \ 230” - “'”
“\ 342 \ 200 \ 231” - “'”
“\ 342 \ 200 \ 232” - ','
“\ 342 \ 200 \ 233” - “'”
“\ 342 \ 200 \ 234” - “”'
“\ 342 \ 200 \ 235” - “”'
“\ 342 \ 200 \ 041” - ' - '
“\ 342 \ 200 \ 174” - ' - '
“\ 342 \ 200 \ 220” - ' - '
“\ 342 \ 200 \ 223” - ' - '
“\ 342 \ 200 \ 224” - ' - '
“\ 342 \ 200 \ 225” - ' - '
“\ 342 \ 200 \ 042” - ' - '
“\ 342 \ 200 \ 246” - “......”