批处理之家's Archiver

myzam 发表于 2011-2-25 15:52

15分钟学会vbs中的正则表达式

vbs中的正则表达式
假定要搜索的字符串是 str="hello world Hello World"
1--规则基本与dos中的findstr类似。有细微的差别。如果对规则有困惑的,可以在cmd中看看findstr的说明就可以了。
2--如何使用?
   a--创建类RegExp
   set reg=new RegExp
   
   b--类的属性
   reg.pattern---用正则表达式建立搜索模板
   如: reg.pattern="hello"
   reg.global=true ---确定是在str中取代全部,还是只取代第一个匹配项。
   reg.replace(str,"x")---把str中的hello用x取代
   reg.ignorecase=true---表示不区分大小写
   c--类的方法
   set matches=reg.execute(str)---方法execute创建由匹配项组成的集合对象。
   要访问这个集合对象就要用语句for each ...next
   该集合里面的每一个对象有两个属性
   属性1  firstindex属性,
   属性2  value属性
   如:[code]   for each i in matches
      wscript.echo i.firstindex,i.value
   next
  [/code]最后把上面的和在一起就得到一个完整的程序如下:[code]set reg=new regexp
str="hello world Hello World"
reg.pattern="hello"
reg.ignorecase=true
reg.global=true
set matches=reg.execute(str)
regstr=reg.replace(str,"x")
wscript.echo regstr
for each i in matches
  wscript.echo i.firstindex,i.value   '‘’‘’value可以不要 ,直接写成 i  
next
''''for语句也可以用下面的代码
''''for  i =0  to  matches.count-1
'''''' wscript.echo  i  ,matches(i)
'''next[/code]

[[i] 本帖最后由 myzam 于 2011-2-26 22:20 编辑 [/i]]

myzam 发表于 2011-2-25 15:58

打错了一个属性名

是ignorecase 不是,想修订但没发修订了。

myzam 发表于 2011-2-26 22:09

批处理学习

学了代码总会忘
学会查阅才是方法,
以下是我原来学习批处理的代码,现在回过头去看,有的都看不懂了。
人们说批处理冷落了不用学了,其实是不对的。
编程的思想,在批处理中可以得到很好的训练。
还有批处理的确方便。比如说wmic,wbemtest,都要用到dos。
批处理微软还会继续的支持下去。
我记得有一次我上班要用word编辑文档,别人在玩QQgame,
说,等一会让我,但我又很急。
于是,过后我用批处理编了过程,见qq只让它运行3分钟然后就杀掉。
他们都不明白是怎么回事,这就叫吃技术的亏。
更可恶的是,可以利用wmic让电脑关机蓝屏,看起来就是病毒。
wimc process if handlecount  !=0   call terminte
handlecount  就是句柄,
!=0什么意思,dos里面的 <.>0 或 neq 0就是这个意思。好玩。

凡是电脑的管理都可以通过wmic完成。我贴过一篇微软的wimc自动编程代码,
一个很好的材料。这是地此[url=http://www.bathome.net/thread-11178-1-1.html]http://www.bathome.net/thread-11178-1-1.html[/url]


这是我学习bat时的笔记,[url=http://www.bathome.net/thread-3577-1-11.html]http://www.bathome.net/thread-3577-1-11.html[/url]

下面是我写的vbs正则表达式学习用的小程序

[url=http://www.bathome.net/thread-11223-1-1.html]http://www.bathome.net/thread-11223-1-1.html[/url]

[[i] 本帖最后由 myzam 于 2011-2-26 22:38 编辑 [/i]]

Demon 发表于 2011-6-1 19:34

21天学会C++

garyng 发表于 2012-2-22 21:23

[b]回复 [url=http://bbs.bathome.net/redirect.php?goto=findpost&pid=81137&ptid=11209]4#[/url] [i]Demon[/i] [/b]

呵呵  是这个么(图片外链)?
    [img]http://coolshell.cn/wp-content/uploads/2010/03/Teach_Youself_CPP_21days.jpg[/img]

乱码 发表于 2012-7-14 11:11

我用了一个月学的正则表达式,用了半年多时间去消化理解的正则表达式,你竟然用15分钟就学会了
难道我真的笨的无可救药了吗?
:L

pubuntu 发表于 2012-7-17 10:47

看下。。看下。。看下。。看下。。

我来了 发表于 2013-4-9 10:58

除非有N多案例,一行行解释的,那样也许真能快速学会,15分钟真的是不太现实吧。

bbh 发表于 2013-11-24 10:54

谢谢myzam!!!

我来了 发表于 2016-9-30 21:17

您的脚本存在下列错误,将不能正常运行:

语法错误:脚本 我的脚本2 ,第5行,第4个字符:(错误码0)没有找到合法的符号。

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.