gpt4 book ai didi

vbscript - 如何从VBscript中的字符串中删除字符

转载 作者:行者123 更新时间:2023-12-04 19:17:27 24 4
gpt4 key购买 nike

我是 vbscript 和 Stack Overflow 的新手,真的可以使用一些帮助。

目前我正在尝试格式化从图像中读取并存储在变量中的电话号码。因为图像是“脏”的,所以额外的字符会出现,例如句点或括号。我已经尽可能地限制了该字段以帮助防止拾取额外的字符,但是唉!

例如我想把 ",123.4567890"变成 "123 456 7890"(不包括双引号)。问题是我不知道可能会选择哪些额外的字符,排除了简单的替换。

我的逻辑是删除任何非数字字符,从左边开始,在第三个数字后插入一个空格,在第六个数字后插入一个空格。

任何帮助都会很棒,如果需要,请随时询问更多信息。

最佳答案

欢迎使用堆栈溢出。您可以使用 Regex 删除非数字,使用 concatenate 函数删除 Mid 部分。

例如:

Dim sTest
sTest = ",123.4567890"

With (New RegExp)
.Global = True
.Pattern = "\D" 'matches all non-digits
sTest = .Replace(sTest, "") 'all non-digits removed
End With

WScript.Echo Mid(sTest, 1, 3) & " "& Mid(sTest, 4, 3) & " "& Mid(sTest, 7, 4)

或者完全使用正则表达式(通过第二个分组模式):
Dim sTest
sTest = ",123.4567890"

With (New RegExp)
.Global = True
.Pattern = "\D" 'matches all non-digits
sTest = .Replace(sTest, "") 'all non-digits removed
.Pattern = "(.{3})(.{3})(.{4})" 'grouping
sTest = .Replace(sTest, "$1 $2 $3") 'formatted
End With

WScript.Echo sTest

关于vbscript - 如何从VBscript中的字符串中删除字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7506270/

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