From: Ryan Smith Date: 2010-01-29T11:54:13+09:00 Subject: Re: gsub not working to replace a 'Chinese' Charater. Here is my code: ============File Main.rb ================ # -*- coding: utf-8 -*- $KCODE = "U" $LOAD_PATH << File.dirname(__FILE__).to_s+"/lib" require 'iv' require 'misc' require 'DBI' require "watir" url="http://www.baidu.com" ie = Watir::IE.new ie.goto url t=ie.title p t t=t.toutf8() Misc.cn2en(t) ============File misc.rb ================ module Misc require "rtranslate" def Misc.cn2en(longMixTxt) #s="\344\270\255\345\233\275\344\270\255\345\233\275china,\344\270\255\345\233\275,china2." s=longMixTxt cnarray=[] enarray=[] cnarray=s.scan(/[^[:alnum:][:punct:] ]+/); p cnarray cnarray.each{ |x| puts x; enarray << Misc.googletranslatetoen(x) } enarray.each{ |x| i=enarray.index(x); p i.to_s; p cnarray[i] ; p x; p s.include?(cnarray[i]); s=s.gsub(/cnarray[i]/, x.to_s) ; p s ;} return s end #Misc.cn2en(longMixTxt) ==========output ============= C:\ruby_project>main.rb -b "������������������������������������������" ["������������������������������������������"] ������������������������������������������ start translate cn->en "0" "������������������������������������������" "Baidu about, you know" true "������������������������������������������" ==== THANKS EVERYBODY WHO CARE THIS POST==== -- Posted via http://www.ruby-forum.com/.