是否可以直接计算字符串中的数字?

时间:2015-08-18 13:45:00

标签: vbscript qtp

我有一个包含数字的字符串。例如,"adf20j83n,m3jh2k9"。有没有直接的方法来计算字符串内的数字位数。在我的例子中,它应该给我"7"作为输出。

另外,我尝试了RegExp,但它在QTP中不适用于VBScript。

是的,我不是在寻找循环和类似的东西。只是直接的方式,或建议使RegExp在QTP中工作。

2 个答案:

答案 0 :(得分:4)

您可能需要通过其ProgId创建COM对象:

Digits: 7

输出:

import numpy as np, pandas as pd

# Dates
start = pd.Timestamp("2014-02-26")
end = pd.Timestamp("2014-09-24")

# Generate some data
N = 1000
quantA = np.random.randint(10, 500, N)
quantB = np.random.randint(50, 250, N)
sell = np.random.randint(start.value, end.value, N)
sell = pd.to_datetime(np.array(sell, dtype="datetime64[ns]"))

df = pd.DataFrame({"sell_date": sell, "quantityA":quantA, "quantityB":quantB})
df.index = df.sell_date

答案 1 :(得分:0)

我从技术上知道你所说的但是它仍然是一个好方法

尝试使用此功能:

Public Sub CountNumeric(ByVal input As String)

    Dim numericCount As Integer = 0

    For Each c As Char In input
        If Char.IsDigit(c) Then numericCount += 1
    Next

    MessageBox.Show(String.Format("Number of numerics : {0}", numericCount)

End Sub

修改: 你也可以试试这个:

Dim charColl As MatchCollection = Regex.Matches(input , "^\d+$")
Console.WriteLine(charColl.Count.ToString())