|
hnyylx 发表于 2010-6-29 10:58
在大师们的指点下,我又学通了一点,为了验证以上大师的指点,理解$1,$2,$3;下面修改代码如下,经测试 ...
Sub bbb()
aa = "20A+2^2[a2a32]-14/2BC-{sin(1.5708)}*10[a2]+10*12*&cos(1.5708)&"
With CreateObject("VBSCRIPT.REGEXP")
.Global = True
.Pattern = "\[.*?\]|\{(.*?)\}|\&(.*?)\&|[^0-9\.\+\-\*\/\^\%\(\)]" '\[.*?\]中括号及里面内容; \{(.*?)\} 大扩号及里面内容; [^0-9\.\+\-\*\/\^\%\(\)]" 除了0-9.+-*/^%()之外的文字; 这3项用 | 连接,表示或者
MsgBox .Replace(aa, "$2") 'replace $2 表示除了&号里面内容,其余全部替换掉; $2代表第2个(括号里面找到的匹配,是一个记忆功能,$2,$3类推
End With
End Sub
不太明白
$1代表\{(.*?)\
$2代表\&(.*?)\&
那[.*?\]这个表示什么?能否指教一二
|
|