我有这样的字符串 -
CRS|R|S||3.0|25|W||U||||0||ECN|211|MACROECONOMIC PRINCIPLES
CRS|R|S||3.0|25|F||U||||0||CIS|105|SURVEY COMPUTER INFO SYSTEMS
CRS|R|S||3.0|25|A||U||||12||CSR|207|AUTOMOBILE POLICY ADJUSTMENT
这些的格式总是这样。 我想在上面的ECN,CIS或CSR之前删除任何数字。 所以在处理之后,我的输出应该是这样的 -
CRS|R|S||3.0|25|W||U||||||ECN|211|MACROECONOMIC PRINCIPLES
CRS|R|S||3.0|25|F||U||||||CIS|105|SURVEY COMPUTER INFO SYSTEMS
CRS|R|S||3.0|25|A||U||||||CSR|207|AUTOMOBILE POLICY ADJUSTMENT
从上面的字符串中删除0和12。
请注意 - ECN,CIS或CSR就是例如。它可以是任何东西。我想在这3个字母之前删除这些数字。
请帮帮我!
答案 0 :(得分:2)
在|
上尝试Split
,清空相应位置的值,然后Join
与|
一起。
Option Explicit
Dim input
Dim lines, ub, i, lineParts
Dim output
input = "CRS|R|S||3.0|25|W||U||||0||ECN|211|MACROECONOMIC PRINCIPLES" & vbCrLf & _
"CRS|R|S||3.0|25|F||U||||0||CIS|105|SURVEY COMPUTER INFO SYSTEMS" & vbCrLf & _
"CRS|R|S||3.0|25|A||U||||12||CSR|207|AUTOMOBILE POLICY ADJUSTMENT"
lines = Split(input, vbCrLf)
ub = UBound(lines)
For i = 0 To ub
lineParts = Split(lines(i), "|")
lineParts(12) = ""
lines(i) = Join(lineParts, "|")
Next
output = Join(lines, vbCrLf)