本帖最后由 binghc 于 2010-11-15 18:21 编辑
看了,不是纯正则处理的,那就不是本贴的谈论范围了
不过系统的库函数,写得就是很好:
Func _StringAddThousandsSep($sString, $sThousands = ",", $sDecimal = ".")
Local $sResult = ""
Local $aNumber = StringRegExp($sString, "(\d+)\D?(\d*)", 1)
If UBound($aNumber) = 2 Then
Local $sLeft = $aNumber[0]
While StringLen($sLeft)
$sResult = $sThousands & StringRight($sLeft, 3) & $sResult
$sLeft = StringTrimRight($sLeft, 3)
WEnd
$sResult = StringTrimLeft($sResult, 1)
If $aNumber[1] <> "" Then $sResult &= $sDecimal & $aNumber[1]
EndIf
Return $sResult
EndFunc
佩服!独特的处理方式! |