Replace,Instr函数不区别⼤⼩写的⽅法
字符串replace函数有时候感觉互联⽹是万能的,什么答案都能到,但还是有时候不能直接到答案,要靠⾃⼰去解决。
VB语⾔⾥Replace函数如何不区别⼤⼩写是很多问的问题,但⽹上难得看到好答案,⼀般都是⽤正则表达式,其实此函数本⾝就有忽略⼤⼩写的功能参数,只是平时⼤家都不⽤,于是舍近求远了。
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
place(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函数具体⽤法整理上来。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论