VB6替换字符串中的字符
各位老师:Text1中有内容111#222#333##444#555#666#
如何将其中的第1个#替换为#1,第2个#替换为#2,第3个#替换为#3......
谢谢!
2023-03-14 11:17
2023-03-14 12:35
2023-03-14 14:15
程序代码:Option Explicit
Private Sub Command1_Click()
Dim i As Long, j As Long
Dim fj() As String
Const SG = 65 '字母 A 的ASCII 码,如果起始字符不是A,这里写超始字符的ASCII码
Const FG = "#" '分隔符
Const TC = 26 '替换最大个数
fj = Split(Text1.Text, FG) '按分隔符 分解字符串到数组
j = UBound(fj) '取元素个数
If j > TC Then j = TC '最多替换前多个个,超过部分不再替换了,防止出错
For i = 1 To j '0号元素不用管,从1号元素到最后一个元素 或 替换的最大个数
fj(i) = Chr(SG + i - 1) & fj(i) '前导字母,根据元素顺序后顺序
Next i
Text2.Text = Join(fj, FG) '再拼接为字符串
End Sub
Private Sub Form_Load()
Text1.Text = "111#222#333##444#555#666#"
End Sub

2023-03-14 17:41
程序代码:
Function bm(ByVal x As Long) As String
Dim s As String
s = ""
While x > 0
s = Chr(64 + x Mod 26) & s
x = x \ 26
Wend
bm = s
End Function
2023-03-15 15:44
2023-03-15 22:58
程序代码:s = "111#222#333##444#555#666#" t = Split(s, "#") For i = 1 To UBound(t) t(i) = Chr(i + 64) & t(i) Next s2 = Join(t, "#")
2023-03-17 14:42