求正则在记事本里取值。
驱动器 C 中的卷没有标签。卷的序列号是 36FE-FE73
C:\Windows\Microsoft.Net\Framework 的目录
2010/11/2111:31 <DIR> v1.0.3705
2009/07/1411:20 <DIR> v1.1.4322
2015/08/1918:39 <DIR> v2.0.50727
2011/04/1222:45 <DIR> v3.0
2015/07/2819:53 <DIR> v3.5
2015/09/1107:32 <DIR> v4.0.30319
0 个文件 0 字节
6 个目录 62,238,863,360 可用字节
如何能过正则取得这几个值
v1.0.3705 v1.1.4322 v2.0.50727 v3.0 v3.5 v4.0.30319 本帖最后由 Huiseyu 于 2015-9-11 20:24 编辑
看看#include'array.au3'
Local $str = _
'驱动器 C 中的卷没有标签。' & @CR _
& '卷的序列号是 36FE-FE73' & @CR _
& '' & @CR _
& 'C:\Windows\Microsoft.Net\Framework 的目录' & @CR _
& '' & @CR _
& '2010/11/2111:31 <DIR> v1.0.3705' & @CR _
& '2009/07/1411:20 <DIR> v1.1.4322' & @CR _
& '2015/08/1918:39 <DIR> v2.0.50727' & @CR _
& '2011/04/1222:45 <DIR> v3.0' & @CR _
& '2015/07/2819:53 <DIR> v3.5' & @CR _
& '2015/09/1107:32 <DIR> v4.0.30319' & @CR _
& ' 0 个文件 0 字节' & @CR _
& ' 6 个目录 62,238,863,360 可用字节'
MsgBox(32,'String' ,$str)
$result = StringRegExp($str ,'\>.+(v[\d.]*)' ,3)
$result = _ArrayToString($result)
$result = StringRegExpReplace($result ,'\|' ,@CRLF)
MsgBox(32*2,'Result' ,$result) 'v[\d\.]+' 感谢两位朋友,正则我可是一窍不通。。只能当伸手派了。
页:
[1]