有如下数据,需要将[]及内部的数字全部替换为空白:
如果一个个去删则显得很笨拙。
[]及内部的数字可以使用颪表达式表示:"\[\d \]"
在下面的查找替换对话框中无法使用正则表达式:
可以考虑编写VBA代码,进行替换,其它类似的查找,只是修改一下正则表达式即可,有一定的通用性:
代码:
运行后效果:
附源代码:
Sub regReplace()
Dim reg As Object
Dim s As String
Set reg = CreateObject("vbscript.regexp")
reg.Pattern = "\[\d \]"
reg.Global = True
Dim lr, lc As Integer
lr = Range("A" & Cells.Rows.Count).End(xlUp).Row 1
lc = Range(Cells(1, Columns.Count), Cells(1, Columns.Count)).End(xlToLeft).Column 1
Range(Cells(1, 1), Cells(lr, lc)).Select
For Each rng In Selection
s = rng.Value
rng.Value = reg.Replace(s, "")
Next rng
Range(Cells(1, 1), Cells(lr, lc)).Select
For Each rng In Selection
s = rng.Value
rng.Value = VBA.Trim(s)
Next rng
End Sub
-End-