查看单个帖子
旧 2013-02-06   #16
yeyu
正式会员
级别:0 | 在线时长:2小时 | 升级还需:3小时
 
yeyu 的头像
 
注册: 06年05月30日
帖子: 1
声望力: 0
声望: 10 yeyu 闻道则喜
现金:2两梁山币
资产:2两梁山币
致谢数: 0
获感谢文章数:0
获会员感谢数:0
回复: 请教 如何转换中文数字为阿拉伯数字?

我用的方法比较死板,以转换金创药的数量为例:
#tr {(*)包金创药~(*}
{
yao_num=%trim(%1);
yao_num=%replace(@yao_num,"零","");yao_num=%replace(@yao_num,"一",1);yao_num=%replace(@yao_num,"二",2);yao_num=%replace(@yao_num,"三",3);yao_num=%replace(@yao_num,"四",4);yao_num=%replace(@yao_num,"五",5);yao_num=%replace(@yao_num,"六",6);yao_num=%replace(@yao_num,"七",7);yao_num=%replace(@yao_num,"八",8);yao_num=%replace(@yao_num,"九",9);yao_num=%replace(@yao_num,"百","*100+");yao_num=%replace(@yao_num,"十","*10+");yao_num=%eval(@yao_num)
}
因为我身上的药不会过千,就只转换到了百位,比如“一百一十二”,通过上面的逐一替换,变成1*100+1*10+2,然后用%eval()对表达式求值得出结果,复杂点的只要增加替换的语句就可以了
yeyu 当前离线  
回复时引用此帖