level 6
递归作的,用法@convert(一万零八千)#func convert %eval(%if(%pos(万,%1)>0,@convert(@getleft(%1,万))*10000+@convert(@getright(%1,万)),%if(%pos(千,%1)>0,@convert(@getleft(%1,千))*1000+@convert(@getright(%1,千)),%if(%pos(百,%1)>0,@convert(@getleft(%1,百))*100+@convert(@getright(%1,百)),%if(%pos(十,%1)>0,@convert(%if(@getleft(%1,十)="",一,@getleft(%1,十)))*10+@convert(@getright(%1,十)),(%pos(%1,"一二三四五六七八九")+1)/2)))))#func getleft %if(%pos(%2,%1)>0,%left(%1,%pos(%2,%1)-1),"")#func getright %delete(%1,1,%len(@getleft(%1,%2))+2)
2009年05月20日 06点05分
1
level 3
中文数字范围(0-99999999)转换为数字代码 convertcn2num 开发平台zmud7.21
#var convertcn2num @convertcn2numReal(%replace(%replace(%1,零,),亿,))
#var convertcn2numReal %eval( %if( %pos( "万", %1)>0, @convertcn2numLow(%left(%1,%eval(%pos(万,%1)-1))), 0)*10000+%if( %pos( 万, %1)>0, @convertcn2numLow(%right(%1,%eval(%pos(万,%1)+1))), @convertcn2numLow(%1)))
#var convertcn2numLow %eval( %replace( %replace( %replace( %subchar( %replace( %1, "八", 8), "千百十九七六五四三二一", "q b s 9 7 6 5 4 3 2 1 "), q, "*1000+"), b, "*100+"), s, "*10+")+0)
2011年10月12日 09点10分
8
level 3
道行转换为数字 有无年天时辰自适应 convertdx2num 开发平台 zmud7.21
#var convertdx2num %eval( @convertcn2num(%if( %pos( "年", %1)>0, %left(%1,%eval(%pos("年",%1)-1)),0))*1000+@convertcndxday(%if( %pos( "年", %1)>0, %right(%1,%eval(%pos("年",%1)+1)), %1)))
#var convertcndxday %eval( @convertcn2num(%if( %pos( "天", %1)>0, %left(%1,%eval(%pos("天",%1)-1)),0))*4+@convertcndxhour(%if( %pos( "天", %1)>0, %right(%1,%eval(%pos("天",%1)+1)), %1)))
#var convertcndxhour %eval( @convertcn2num(%if( %pos( "时辰", %1)>0, %left(%1,%eval(%pos("时辰",%1)-1)),0))/3)
2011年10月12日 09点10分
9