遇到难题了,高手请进

zc2cm 2006-10-29 09:28:31
正则表达式处理下面字符串

================================
aaa@bbb#ccc
111@22222bbb222222#ccc
fdsaj@fdlsakbbdas#fdlsakjlfda
000000@fff
fdsbbdsafdsa
fdsafdsafdas#fdsafdsa
===============================
我想要的结果是@和#之间的b替换为C
这个正则不会写了,如果两个之间的这个替换B就好处理的
我要的是两个符号之间的再次处理,比如
aaa@bfds#ddd
123@fdasfdasbb
dsafdsa#
的结果为
aaa@Cfds#ddd
123@fdasfdasCC
dsafdsa#

...全文
124 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
1个 表达式我只能完成1次替换操作 假如要多次替换可用如下代码可以实现
Private Function btoC(str1 As String)
Dim str2 As String, strtemp As String, strmid As String, sremidtemp As String
Dim Intstr1 As Long, Intstr2 As Long
str2 = str1
Intstr1 = InStr(1, str2, "@")
Intstr2 = InStr(Intstr1 + 1, str2, "#")
Do While Intstr1 > 1 And Intstr2 > 1
strmid = Mid(str2, Intstr1, Intstr2 - Intstr1 + 1)
strmidtemp = Replace(strmid, "b", "C")
str2 = Left(str2, Intstr1 - 1) & strmidtemp & Right(str2, Len(str2) - Intstr2)
Intstr1 = InStr(Intstr2 + 1, str2, "@")
Intstr2 = InStr(Intstr1 + 1, str2, "#")
Loop
btoC = str2
End Function

Private Sub Form_Click()
Print btoC("b12@ddbffb#dbb@sdfdbb#sdb")
End Sub
zc2cm 2006-10-29
  • 打赏
  • 举报
回复
你写给我看看,谢谢!20分都给你~如果你再想要还给你补上!非常感谢!!!
  • 打赏
  • 举报
回复
1个表达式就可以完成这个功能?

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧