论坛首页 编程语言技术论坛

求教Ruby在linux脚本中的中文问题

浏览 2835 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-02-26  
尝试用ruby改写一个统计程序,但是过程中出现了可耻的中文问题。
系统是suse,系统语言为"en_US"。
问题1: 脚本中的中文
比如,
puts "诺" # 运行ok

但是
puts "基" # 运行失败,unterminated string meets end of file


问题2: 正则表达式
比如,
myhash=Hash.new
File.open path do |f|
  while f.gets
    if $_ =~ /&(.*?)\t(.*?)$/
      myhash[$1]=$2
    end
  end
end

文件类似于:
01  排行
03  主题
0102  无奈
003  摇滚
004  节拍
0105  绝唱
0106  真情
0108  藏

03和0105会无法匹配,但是如果用split则可以正确解析。
不知道是否有朋友遇到类似问题,还请指教。
   发表时间:2007-02-27  
locale是不是要搞成utf8
0 请登录后投票
   发表时间:2007-02-27  
改了,utf8的话vim编辑有问题地~
0 请登录后投票
   发表时间:2007-02-28  
哎,,,帖子我结了,解决方法见:
http://kitta.iteye.com/blog/56549
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics