ruby 阿拉伯數字轉換中文

2021-08-27 15:46:24 字數 719 閱讀 8986

cstr = [ "零", "壹", "貳", "叄", "肆", "伍", "陸", "柒", "捌", "玖" ]

cn_nums1 = [ "", "拾", "佰", "仟", "萬", "拾", "佰", "仟", "億", "拾", "佰", "仟"]

nums = "50000000010"

h = nums.split(//)

s = ""

i=h.count

rstr = ""

h.each_with_index do |a,j|

s+=cstr[a.to_i]+cn_nums1[i-1]

i=i-1

endrstr=s.gsub("拾零","拾")

rstr=rstr.gsub("零拾","零");

rstr=rstr.gsub("零佰","零");

rstr=rstr.gsub("零仟","零");

rstr=rstr.gsub("零萬","萬");

for i in 1..6 do

rstr=rstr.gsub("零零","零");

rstr=rstr.gsub("零萬","零");

rstr=rstr.gsub("零億","億");

rstr=rstr.gsub("零零","零");

endrstr+="元整"

rstr=rstr.gsub("零元整","");

p rstr

阿拉伯數字轉中文

public class cnuppercaser 供分級轉化的陣列,因為各個例項都要使用所以設為靜態 private static final char series 建構函式,通過它將阿拉伯數字形式的字串傳入 param original public cnuppercaser string o...

阿拉伯數字大寫轉換

public class genchinese private final static string str shu ji 大數量級 private final static string str shu ji 2 千內數量級 public genchinese param intnumber 需...

阿拉伯數字轉換為中文數字

首先,如果在數字中有小數部分,那麼直接從末尾開始將小數部分的每一位轉換為中文,即 20 28行所示,最後需要增加乙個 點 字。然後,從小數點左邊的低位到高位四位四位地進行轉換,如 34 51行所示。flag是0位數的計數,如果當前四位全是0那麼不需要每四位的單位,如 萬 億 兆 等,見52 53行。...