本帖最后由 lixiaolong 于 2011-12-9 17:14 编辑
回复 1# gzh888666
用了正则,只支持整数,没事练习练习~
$KB = 1000
MsgBox(0, $KB & 'KB', KBtoMBSplit($KB))
$KB = 1024
MsgBox(0, $KB & 'KB', KBtoMBSplit($KB))
$KB = 100000
MsgBox(0, $KB & 'KB', KBtoMBSplit($KB))
$KB = 9216
MsgBox(0, $KB & 'KB', KBtoMBSplit($KB))
$KB = 8192
MsgBox(0, $KB & 'KB', KBtoMBSplit($KB))
$KB = 7168
MsgBox(0, $KB & 'KB', KBtoMBSplit($KB))
$KB = 6144
MsgBox(0, $KB & 'KB', KBtoMBSplit($KB))
$KB = 4096
MsgBox(0, $KB & 'KB', KBtoMBSplit($KB))
$KB = 3072
MsgBox(0, $KB & 'KB', KBtoMBSplit($KB))
$KB = 2048
MsgBox(0, $KB & 'KB', KBtoMBSplit($KB))
$KB = 2048
MsgBox(0, $KB & 'KB', KBtoMBSplit($KB))
$KB = 1024000
MsgBox(0, $KB & 'KB', KBtoMBSplit($KB))
Func KBtoMBSplit($numY); KBtoMB
Local $KB_TO_MB = StringRegExpReplace($numY, '(?m)^(1)0[02][04]|(2)0[04][08]|(3)0[07][02]|(4)0[09][06]|' & _
'(5)[01][02]0|(6)[01][04][04]|(7)[01][06][08]|(8)[01][09][02]|(9)[02][01][06]', '\1\2\3\4\5\6\7\8\9')
;~ $KB_TO_MB = StringRegExpReplace($KB_TO_MB, '(\d)(?=(\d{3})+(?!\d))', '\1,'); 加逗号
Return $KB_TO_MB & ' MB'
EndFunc ;==>KBtoMBSplit
【(?m)^】这个去掉也行. |