gpt4 book ai didi

vbscript - 如何在vbscript中的数字变量中的3位数字后添加逗号?

转载 作者:行者123 更新时间:2023-12-02 19:19:38 25 4
gpt4 key购买 nike

我想在 vbscript 中的数字变量中的 3 位数字后面放置一个逗号

w_orimpo = getvalue(rsmodifica , "w_orimpo")
w_orimpo = FormatNumber(w_orimpo,2)

w_orimpo 的初始值为 21960。

如果我使用 FormatNumber,我会得到值 21,960。

但我想得到以下一个 -> 219,60

最佳答案

我们可以通过正则表达式替换来处理这个问题:

Dim input, output, regex1, regex2
Set input = "21960"
Set regex1 = New RegExp
Set regex2 = New RegExp
regex1.Pattern = "(\d{3})"
regex1.Global = True
regex2.Pattern = ",$"
output = regex1.Replace(StrReverse(input), "$1,")
output = StrReverse(regex2.Replace(output, ""))
Rhino.Print output

请注意,此处需要两个正则表达式替换,因为 VBScript 的正则表达式引擎不支持环视。有一个正则表达式模式可以完成这里的工作:

(\d{3})(?!$)

这一次只会匹配(并捕获)三个数字的组,并且仅当这三个数字后面没有跟随输入的末尾时。这是为了覆盖以下边缘情况所必需的:

123456 -> 123,456

我们不希望在最后一组三位数后面有逗号。我的答案通过执行另一个正则表达式替换来修剪任何尾随逗号来解决这个问题。

关于vbscript - 如何在vbscript中的数字变量中的3位数字后添加逗号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58202092/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com