北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
查看: 2449|回复: 1

请教一个抓取中文数字变成数字的问题

[复制链接]
发表于 2020-1-2 13:55:40 | 显示全部楼层 |阅读模式
^??你目前所学过的技能:*共(*)项技能,你的技能等级最多能达到(*)级
convertnumber %2;#add reward_jn %number(@in_chinese_number);#say @reward_jn点技能等级;#color white

#alias convertnumber {#var in_chinese_number %2;#read cmd_digit.txt;#var in_chinese_number @out_number;#say @in_chinese_number}

cmd_digit.txt
#var chinese_number_list {零|一|二|三|四|五|六|七|八|九|十|百|千|万}
#var number_list {|1|2|3|4|5|6|7|8|9|A|B|C|D}
#var ix 0
#alias item {#var tmp_n 0;#ForAll %1 {#add tmp_n 1;#if (@tmp_n=%2) {#var myitem %i}}}
#FORALL @chinese_number_list {#add ix 1;item @chinese_number_list @ix;#var tmp_chinese @myitem;item @number_list @ix;#var tmp_number @myitem;#var in_chinese_number %replace(@in_chinese_number,@tmp_chinese,@tmp_number);}
#if !%isnumber(%copy(@in_chinese_number,1,1)) {#var in_chinese_number %insert(1,@in_chinese_number,1)}
#var tmp_len %len(@in_chinese_number);
#var out_number 0;
#Loop @tmp_len {#var tmp_word %copy(@in_chinese_number,%{i},1);#if (%isnumber(@tmp_word)) {#if (%i<@tmp_len) {#var tmp_n %copy(@in_chinese_number,(%i+1),1);#if (@tmp_n=A) {#var tmp_n 1};#if (@tmp_n=B) {#var tmp_n 2};#if (@tmp_n=C) {#var tmp_n 3};#if (@tmp_n=D) {#var tmp_n 4};#case (%eval(@tmp_n)) {#add out_number (%number(@tmp_word)*10)} {#add out_number (%number(@tmp_word)*100)} {#add out_number (%number(@tmp_word)*1000)} {#add out_number (%number(@tmp_word)*10000)}} {#add out_number %number(@tmp_word)}}};
#var in_chinese_number @out_number
#say @in_chinese_number
#unvar tmp_len
#unvar chinese_number_list
#unvar number_list
#unvar ix

这是我在网上找的,不知道哪里出问题不能正确运行

北大侠客行MUD,中国最好的MUD
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2020-1-2 18:50:20 | 显示全部楼层
找到原因了#var chinese_number_list {零|一|二|三|四|五|六|七|八|九|十|百|千|万}
这一行在转换的时候变成乱码造成的
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|北大侠客行MUD ( 京ICP备16065414号-1 )

GMT+8, 2024-4-30 05:00 PM , Processed in 0.010420 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表