我希望能够把一个格式化的字符串(如下所示)分割成一个数组(之后我会在使用)。
示例字符串:(x,f),(5,6),(6,1),(7,8),(8,5),(9,5),(10,5),(11,3),(12,4),(13,1),(14,6),(15,2),(16,10)
每组括号都是一个维度,其中的数字构成另一个维度。例如,strArray(4,2)将导致括号4,数字2->这在这种情况下是8。
我曾考虑过通过使用多个 SPLIT 函数来 brute force 处理它,并且我已经研究了正则表达式来完成它。 我有信心制作一个一维数组,但是处理二维数组时遇到了困难。
我正在使用 Microsoft Excel 2016,并且是 VBA 的中级程序员。
以下是我尝试处理每个括号的一种方法,但它不会产生二维数组:
示例字符串:(x,f),(5,6),(6,1),(7,8),(8,5),(9,5),(10,5),(11,3),(12,4),(13,1),(14,6),(15,2),(16,10)
每组括号都是一个维度,其中的数字构成另一个维度。例如,strArray(4,2)将导致括号4,数字2->这在这种情况下是8。
我曾考虑过通过使用多个 SPLIT 函数来 brute force 处理它,并且我已经研究了正则表达式来完成它。 我有信心制作一个一维数组,但是处理二维数组时遇到了困难。
我正在使用 Microsoft Excel 2016,并且是 VBA 的中级程序员。
以下是我尝试处理每个括号的一种方法,但它不会产生二维数组:
Sub EvaluateString(txtString as String)
txtArray = Split(txtSTring, "),(")
If IsEmpty(txtArray) Then L=0 Else L=UBound(txtArray)
'remove leading "(" and last ")"
txtArray(0) = Replace(txtArray(0), "(", "")
txtArray(L) = Replace(txtArray(L), ")", "")
For i = 0 to L
'Do something
next i
End Sub