当前位置:  开发笔记 > 后端 > 正文

你能在VBScript字符串中关闭区分大小写吗?

如何解决《你能在VBScript字符串中关闭区分大小写吗?》经验,为你挑选了2个好方法。

我很确定答案是否定的.我知道我可以写

如果lcase(strFoo)= lcase(request.querystring("x"))则...

或者使用inStr,但我只想检查是否有一些未记录的设置隐藏在注册表中或某处使VBScript字符串的内容与脚本语言的其余部分保持一致!

谢谢丹



1> Mike Henry..:

有一个StrComp函数允许通过vbTextCompare作为第三个参数传递对两个字符串进行不区分大小写的比较.主要文档并没有那么明显,但是在这篇Hey,Scripting Guy文章中对它进行了讨论.

例如:

If StrComp(strFoo, Request.QueryString("x"), vbTextCompare) = 0 Then ...

但是,在实践中,我使用LCase或者UCase方式不仅仅是StrComp不区分大小写的字符串比较,因为它对我来说更明显.



2> EBGreen..:

否.根据功能,选项可能在那里(例如InStr)作为可选参数,但是为了直接比较,没有全局选项.

可以使用的一个鲜为人知的选项是,如果您有一个字符串列表,并且您想查看字符串是否在该列表中:

Dim dicList : Set dicList = CreateObject("Scripting.Dictionary")
Dim strTest

dicList.CompareMode = 0 ' Binary ie case sensitive
dicList.Add "FOO", ""
dicList.Add "BAR", ""
dicList.Add "Wombat", ""

strTest = "foo"
WScript.Echo CStr(dicList.Exists(strTest))

Set dicList = CreateObject("Scripting.Dictionary")
dicList.CompareMode = 1 ' Text ie case insensitive
dicList.Add "FOO", ""
dicList.Add "BAR", ""
dicList.Add "Wombat", ""

strTest = "foo"
WScript.Echo CStr(dicList.Exists(strTest))

推荐阅读
手机用户2402851155
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有