如何将零添加到字符串中的单个数字
How to add zero to single digit in a string
每当我在不更改数量数字的情况下获得单个数字的日期时,我需要在下面的字符串中附加零(下面的字符串是系统在我的应用程序中生成的,而不是由用户创建的) ,
Data Added Quantity:1 on Dec 9 2015 modified on Jun 7 2016
我需要像下面一样更改此字符串,
Data Added Quantity:125 on Dec 09 2015 modified on Jun 07 2016
到目前为止我已经尝试了下面的正则表达式,但没有得到想要的输出。
str = "Data Added Quantity:1 on Dec 9 2015 modified on Jun 7 2016"
Set oReg = New RegExp
oReg.Pattern = "\s\d{1}\s"
Set obj = oReg.Execute(str)
For i = 0 To obj.Count-1
mD = obj.Item(i).Value
oReg.Replace(str, "0" & mD)
Next
我们如何使用 VBScript 实现这一点?
如果稍微调整模式并将Global
选项设置为True
,您可以简单地使用Replace
方法。无需 Excecute
和循环。
Set re = New RegExp
re.Pattern = "\s(\d)\s"
re.Global = True
str = re.Replace(str, " 0 ")
没有修饰符的 \d
已经正好匹配一个数字,因此 \d{1}
是多余的。 \d
周围的括号定义了一个捕获组,允许您在替换中使用匹配的子字符串 (
)。
每当我在不更改数量数字的情况下获得单个数字的日期时,我需要在下面的字符串中附加零(下面的字符串是系统在我的应用程序中生成的,而不是由用户创建的) ,
Data Added Quantity:1 on Dec 9 2015 modified on Jun 7 2016
我需要像下面一样更改此字符串,
Data Added Quantity:125 on Dec 09 2015 modified on Jun 07 2016
到目前为止我已经尝试了下面的正则表达式,但没有得到想要的输出。
str = "Data Added Quantity:1 on Dec 9 2015 modified on Jun 7 2016"
Set oReg = New RegExp
oReg.Pattern = "\s\d{1}\s"
Set obj = oReg.Execute(str)
For i = 0 To obj.Count-1
mD = obj.Item(i).Value
oReg.Replace(str, "0" & mD)
Next
我们如何使用 VBScript 实现这一点?
如果稍微调整模式并将Global
选项设置为True
,您可以简单地使用Replace
方法。无需 Excecute
和循环。
Set re = New RegExp
re.Pattern = "\s(\d)\s"
re.Global = True
str = re.Replace(str, " 0 ")
没有修饰符的 \d
已经正好匹配一个数字,因此 \d{1}
是多余的。 \d
周围的括号定义了一个捕获组,允许您在替换中使用匹配的子字符串 ()。