为说明我的问题,请使用以下简单示例。
我希望能够将“替换”和“那个”之间的所有文本替换为“完成”。例如,以下两个字符串:
blah blah blah replace this and that blah
blah blah blah replace this and some other text and that blah
此字符串
blah blah blah it is done blah
在Excel中使用通配符使用SUBSTITUTE函数。
这是我正在使用的公式:
=SUBSTITUTE("blah blah blah replace this and that blah","replace*that","it is done")
该公式不会替换文本,并且计算结果为“等等等等替换这个和那个等等”
这是怎么回事?
答案 0 :(得分:1)
SUBSTITUTE和REPLACE函数都将在文本中选择一个字符串并进行相应的更新。但是,REPLACE函数会根据其位置替换字符串。
=REPLACE(A1,SEARCH("replace",A1),SEARCH("that",A1)+ 4-SEARCH("replace",A1),"it is done")
您可以使用SEARCH函数查找第一个单词,然后找到要替换的字符串的长度。
答案 1 :(得分:0)
我不确定是否可以将SUBSTITUTE
与通配符一起使用。
但是您可以使用FIND
获取这些单词在文本中的位置,然后使用LEFT
和RIGHT
获取这些单词之外的文本。
例如:
= LEFT(A1,FIND("replace",A1)-1)&"it is done"&RIGHT(A1,LEN(A1)-FIND("that",A1)-3)
注意FIND("replace",B4)-1
获取字符的位置,就在“替换”之前。
然后LEN(B4)-FIND("that",B4)-3
获得字符在“ that”之后的位置。