求助word利用VBA字符串查找并替换功能

Jicwo[abc]iuhiwd
vmei=1
abc=2
abc=3

现在希望查找[]中的字符串(这里是用abc举例,实际上每次可能不同),并把找到的abc字符串作为关键字,再次在全文查找并替换成其他,比如xxx,请问该如何实现
补充:
括号的位置随机,括号内的字符长度随机,必须用正则匹配(高级查找)查找,如"\[*\]",这步奏我会,可是不知道如何把查找到的括号里内容进行二次全文查找替换

dim i as integer
dim j as integer
dim str1 as string
dim str2 as string
dim str3 as string
dim str4 as string
str1 = jicwo[abc]iuhiwd
str2 = ""
str3 = ""
str4 = ""
for i = 1 to len(str1)
if left(right(str1,i),1) <> "[" then
str2 = str2 + left(right(str1,i)
else
str3 =replace(str1,str2,"")
end if
next i
for j = 1 to len(str3)
if left(right(str3,j),1) <> "]" then
str4 = str4 + left(right(str3,j)
else
str4 =replace(str4,"]","")
end if
next j
到这里str4就是中括号内的内容了,后面你说的我没太明白是什么意思,在全文把Jicwo[abc]iuhiwd替换成Jicwo[xxx]iuhiwd ?追问

1、括号内的东西长度不同,比如可能是ab或abcd,括号的位置也不同,前后乱码我随便打的,就是想说明括号也是要查找的,必须要用正则匹配(高级查找)来定位括号内内容
2、第一次搜索识别出括号内是abc后,在全文中把abc全部替换成XXX,比如下面abc=2、abc=3就变成xxx=2、xxx=3,假设括号内的内容是ab,那就应该是变成xxc=2、xxc=3,明白了吗?

追答

第一个问题,你应该没看懂我程序,我查找的就是 “[” 和 “]” 吗?无论括号内有多少字符,都一样的。
第二个问题,我明白了,用foreach 循环控制,依次替换,这个语句你学过吧?

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网