想做个可疑替换多个字符串的工具,就是说一下子可以替换多个字符串,
不过有个问题
比如,aaa要替换成aba
bab要替换成ccc下列字符串
aaabab
用先全部替换一个再替换下一个的方法替换后就成了
aaabab->ababab->acccab
应该是
abaccc的怎么解决阿?
不过有个问题
比如,aaa要替换成aba
bab要替换成ccc下列字符串
aaabab
用先全部替换一个再替换下一个的方法替换后就成了
aaabab->ababab->acccab
应该是
abaccc的怎么解决阿?
解决方案 »
- VB 如何禁止使用应用程序的最小最大化按钮和改变大小
- 如何实现VB+SOAP+WebService中的记录锁定问题?
- 我想把已在MSFlexGrid里显示的数据读到DataReport去做成报表打应,请问如何读过去?
- 菜鸟的问题:在VB中如果调用WORD实现以下功能?急!!!
- 求助!关于ado连接excel的查找方面的问题
- 请教:ADO各个对象及方法的详细参数。csdn这会查不到。
- 感谢热情帮助,请chewinggum(口香糖)进来领分
- 为何添加不进数据库记录?
- treeview加入节点的问题,为什么提示key 值无效???
- 5-10万元求购一智能解盘器源码
- Setup Factory 6.0安装的序列号有没有谁知道啊
- 标准组件如何注册?
Private Sub Command1_Click()
Dim x As String
x = "aaabab"
x = Replace(x, "aaa", "@@@")
x = Replace(x, "bab", "###")
x = Replace(x, "@@@", "aba")
x = Replace(x, "###", "ccc")
MsgBox x
也就是说,不管你怎么替换,程序总是无法确定babab这种字符串该如何替换。对于这种问题,程序应该事先作出判断,也就是说先进行一次“预替换”,如果发现
存在二义性,则提示用户,让用户指定如何替换。
x = Replace(x, "aaa",string(50,"@"))
x = Replace(x, string(50,"@"), "aba")
例如aa->bb aaa->cc aaaa->bbcc,那么对于aaaaaaaaa你怎么来替换?除非你有一套规则,按照规则将之分解,例如你的规则是对于aaaaaaaaa来说,他表示为aa aaaa aaa,这样就可以替换了。
其实你的问题已经涉及到编译原理了,多看看这方面的书吧,对你肯定有启发的。
replace(str,'aaa','aba')
replace(str,'bab','ccc')