找回密码
 加入
搜索
查看: 2688|回复: 11

[AU3基础] 怎样输出用逗号分隔的数字?

 火.. [复制链接]
发表于 2011-8-31 11:16:26 | 显示全部楼层 |阅读模式
例如,数字为123456789,想输出为123,456,789,该怎么办?
发表于 2011-8-31 11:20:03 | 显示全部楼层
你在那里输出呢?
 楼主| 发表于 2011-8-31 11:37:15 | 显示全部楼层
只是显示输出,例如msgbox里面。
找不到直接的方法,虽然可以编代码输出,但感觉输出带逗号的数字是一个常用的方式啊
autoit怎么会不支持呢?
发表于 2011-8-31 11:51:26 | 显示全部楼层
回复 3# manson


    StringFormat()
 楼主| 发表于 2011-8-31 14:44:07 | 显示全部楼层
回复 4# happytc


    已经看过这个函数的帮助了,没有我想要的东西
发表于 2011-8-31 15:52:49 | 显示全部楼层
发表于 2011-8-31 16:38:16 | 显示全部楼层
#Include <String.au3>
_StringAddThousandsSep

评分

参与人数 1金钱 +30 收起 理由
powerofos + 30 谢谢,我学到了~

查看全部评分

 楼主| 发表于 2011-8-31 20:18:44 | 显示全部楼层
谢谢楼上,这个确实可以。
#include <String.au3>
$nAmount = 89996.31
$sDelimted = _StringAddThousandsSep($nAmount)    ;输出89.996.31
MsgBox(64, 'Info', $sDelimted)

$nAmt = '38849230'
$sDelim = _StringAddThousandsSep($nAmt)   ;输出38,849,230
MsgBox(64, 'Info', $sDelim)
发表于 2011-8-31 21:56:04 | 显示全部楼层
$number = "3456654557890.23"
MsgBox(0, 0, _Currency($number))

Func _Currency($n)
        Local $Link
        If StringInStr($n, ".") Then
                $temp = StringSplit($n, ".", 2)
                $n = $temp[0]
                While 1
                        If Not StringRegExp($n, '(\d+)(\d{3})', 0) Then ExitLoop
                        $n = StringRegExpReplace($n, '(\d+)(\d{3})', "$1,$2")
                WEnd
                $n = $n & "." & $temp[1]
        Else
                While 1
                        If Not StringRegExp($n, '(-?\d+)(\d{3})', 0) Then ExitLoop
                        $n = StringRegExpReplace($n, '(-?\d+)(\d{3})', "$1,$2")
                WEnd
        EndIf

        Return $n
EndFunc   ;==>_Currency

评分

参与人数 1金钱 +20 贡献 +5 收起 理由
powerofos + 20 + 5 这个评分不因为代码,是我“才”发现了你的 ...

查看全部评分

发表于 2011-8-31 22:53:12 | 显示全部楼层
3mile 发表于 2011-8-31 21:56


正解啊。。。
正则表达式,要去学习下了。
发表于 2011-9-1 07:41:21 | 显示全部楼层
标记学习一下...这功能会常用
发表于 2011-9-1 15:12:50 | 显示全部楼层
回复 9# 3mile
三笑想没想过小数的事情,那个函数不行,不过觉得正则应该能搞定,算是引申下这个问题吧
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 06:54 , Processed in 0.082971 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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