我正在使用excel 2007,我正在添加一个看起来像这样的宏:
Function S(Value As String, Pattern As String, ReplaceWith As String, Optional IgnoreCase As Boolean = False)
Dim r As New VBScript_RegExp_55.RegExp
r.Pattern = Pattern
r.IgnoreCase = IgnoreCase
r.Global = True
S = r.Replace(Value, ReplaceWith)
End Function
我可以在工作表中使用这样的搜索和替换功能:
=s("Say Hello","Hello","HI",FALSE)
工作正常。
我真正想要做的就是这样:
从文本中搜索大写字母:“MyName”
结果:“我的名字”
我使用[A-Z]进行搜索似乎无法用空格替换它并且原始字符完好无损。
我知道我需要使用backrefrence,但无法想办法做到这一点,因为我对vbscript和regex都不熟悉。
感谢您的帮助! :)