字符窜:100请告诉我 66亲的身高体重多少80现在有多位顾客咨询。现在想用VBS代码将字符窜按数值大小重新排序从大到小得到新的字符窜:100请告诉我80现在有多位顾客咨询。 66亲的身高体重多少
以下是一个VBS代码实现:
str = "(100)请告诉我 (66)亲的身高体重多少(80)现在有多位顾客咨询。" arr = Split(str, "(") '将字符串按照"("分割为一个数组
'将每个元素中的数值提取出来并存储到一个新的数组中 Dim nums() ReDim nums(UBound(arr)) For i = 1 To UBound(arr) nums(i) = CInt(Left(arr(i), InStr(arr(i), ")") - 1)) Next
'对数值数组进行冒泡排序,从大到小 For i = UBound(nums) - 1 To 1 Step -1 For j = 0 To i - 1 If nums(j) < nums(j + 1) Then temp = nums(j) nums(j) = nums(j + 1) nums(j + 1) = temp tempStr = arr(j + 1) arr(j + 1) = arr(j + 2) arr(j + 2) = tempStr End If Next Next
'将排好序的数组拼接回字符串 newStr = "" For i = 1 To UBound(arr) newStr = newStr & "(" & arr(i) Next
'输出新字符串 WScript.Echo newSt
原文地址: http://www.cveoy.top/t/topic/fpJf 著作权归作者所有。请勿转载和采集!