如何替换一系列字符,但如果它们是更大字的一部分则不能?

时间:2014-02-19 23:47:28

标签: vba excel-2013

假设我想将BASE字符串替换为STUFF,而不是BASELESSBASED。这是原始字符串:

THE BASE OF THIS STATEMENT IS A BASELESS BASE

我希望它阅读:

THE STUFF OF THIS STATEMENT IS A BASELESS STUFF

我有类似的东西

Dim myString As String : myString = "THE BASE OF THIS STATEMENT IS A BASELESS BASE"
myString = Replace(myString, "BASE ", "STUFF ")
If Right(myString, 4) = "BASE" Then
  myString= Left(myString,Len(myString)-4) & "STUFF"
End If

但是有更清洁的方式吗?

1 个答案:

答案 0 :(得分:0)

试试这个:

Dim regEx
Set regEx = New RegExp
regEx.Pattern = "BASE(?!\w)"
regEx.IgnoreCase = True
regEx.Global = True
myString= regEx.Replace(myString, "STUFF")