vbs replace instr函数如何不区分大小写匹配
除了使用正则表达式外,其实replace和instr的参数中也可以设置不区分大小写字母匹配的参数,默认是省略的,对字母大小写敏感。
Replace函数一共有六个参数,其中三个必须三个可选:Replace(expression,find,replacewith[,start[,count[,compare]]])
compare参数表示比较方式,平时我们都省略了,那样是按二进制比较,区分大小写的,还可以设为按文字比较(值1),这样就不区别大小写了。
当我们指定了compare参数,就必须把start(开始位置)和count(替换次数)都指定了,因为它们在前面。
所以不区别大小写替换的方法是(用举例看得明白些):
Replace("pPfdppf","PP","",1,-1,1) '结果返回:fdf
其它方法:使用正则表达式:
Function replace1(str,rplstr,rplwith) dim re Set re=new RegExp re.IgnoreCase =true re.Global=True re.Pattern=rplstr replace1=re.replace(str,rplwith) End Function replace1("pPfdppf","PP","")
大小转换法:如果内容的大小写不重要可以先将内容Ucase或Lcase一下再替换,不过既然有了前面的好方法,此法就作废了。
Instr函数返回某字符(串)在某字符串里首次出现的位置,如果没有则返回0。它有四个参数,两个必须两个可选,如果省略了可选参数就会区别大小写。
InStr([start, ]string1, string2[, compare])
要不区别大小写应该这样写:
Instr(1,"pPfdppf","PP",1) ‘结果返回1
起作用的是后面那个1,原理同Replace函数。需要注意的是前面那个1不能省略,省略了会报错。
其实很多函数我们都是只知其一不知其二,只满足于简单的用法是不行的。据我所了解的,现在还没有一个完整系统又简单易理解的VB函数教程,很多使用教程都没有实例,那些参数的用法看不明白。我会在以后把常用的VB函数具体用法整理上来。
来源:http://hi.baidu.com/peterchenxi/item/53cf7277853fd017d1dcb3d4
加支付宝好友偷能量挖...