VBS中的标识符(Identifiers)_vbs

VBS其实存在两种标识符:

普通标识符(NORMALIDENTIFIER)
中括号标识符(BRACKETIDENTIFIER)
但是我看过的VBS书籍上都只讲了普通标识符,没有讲中括号标识符。

普通标识符的规则我们已经很熟悉了:

第一个字符必须是字母。
后面的字符可以是字母、数字和下划线(_)
长度不能超过 255 个字符
不能是VBS保留的关键字
中括号标识符的规则更简单:

中括号括起来的任意Unicode字符(换行、回车和NULL除外)
长度不能超过 255 个字符(不包括中括号)
有了中括号标识符,就可以用任意字符来做变量名了,包括VBS保留字

复制代码 代码如下:

Dim [if],[昵称]
[if] = "Hello world"
[昵称] = "Demon"
WScript.Echo [if]
WScript.Echo [昵称]

这样给变量或者函数命名的时候就可以使用中文了,看起来比较牛逼。

参考链接:VBScript Trivia: Bracket Identifiers and Reserved Word Incompatibilities
原文:http://demon.tw/programming/vbs-identifiers.html

时间: 2025-01-29 08:09:26

VBS中的标识符(Identifiers)_vbs的相关文章

VBS中常用脚本代码_vbs

将域用户或租添加到本地组 Set objGroup = GetObject("WinNT://./Administrators") Set objUser = GetObject("WinNT://testnet/Engineers") objGroup.Add(objUser.ADsPath) 修改本地管理员密码 Set objcnlar = GetObject("WinNT://./administrator, user") objcnla.

VBS ArrayList Class vbs中的数组类_vbs

Class ArrayList  Private items()  Private size   Private Sub Class_Initialize  size = 0  ReDim items(1)   End Sub   Private Sub Class_Terminate  items = null   End Sub  Public Function Add(ByVal value)        If (size = Ubound(items)) Then EnsureCapa

在一个vbs中包含其他vbs文件的方法_vbs

asp中   include file   包含其他文件vbs中 复制代码 代码如下:  Option Explicit  On Error Resume Next Sub include(vbs)  Dim fso : Set fso = CreateObject("scripting.FileSystemObject")  Dim p : p   = Split(Wscript.ScriptFullName,"\")  p(UBound(p))  = vbs  

VBS中InStrRev函数的第三个参数(Start)使用注意事项_vbs

VBS中InStrRev函数使用过不少,但是几乎没有用过第三个参数,今天才发现第三个参数的用法跟我想的不太一样. 文档中是这么描述InStrRev函数的: 复制代码 代码如下: 返回某字符串在另一个字符串中出现的从结尾计起的位置. InStrRev(string1, string2[, start[, compare]]) 参数 string1 必选项.接受搜索的字符串表达式. string2 必选项.被搜索的字符串表达式. Start 可选项.数值表达式,用于设置每次搜索的开始位置.如果省略,

VBS中CreateObject和WScript.CreateObject的区别介绍_vbs

CreateObject和WScript.CreateObject的区别一: CreateObject是VBS的内置函数,属于语言的一部分:而WScript.CreateObject是Windows脚本宿主(wscript.exe和cscript.exe)提供的WScript对象的方法.类似于批处理中内部命令和外部命令的关系.在VBS中,CreateObject总是可用的,而WScript.CreateObject只有在宿主为wscript.exe和cscript.exe的情况下才可以使用,在W

VBS中的SetLocale函数到底有什么用?_vbs

VBS文档中对SetLocale函数的描述: 设置全球区域设置,并返回以前的区域设置. 一个 locale 是用户参考信息集合,与用户的语言.国家/地区和文化传统有关.该 locale 决定键盘布局.字母排序顺序和日期.时间.数字与货币格式. 简单的说,就是VBS中的一些函数的返回值与当前的locale相关,比如说MonthName函数: 复制代码 代码如下: Dim a(12), b(12) 'By Demon SetLocale "zh-cn" For i = 1 To 12 a(

VBS中Run和Exec的区别_vbs

Set ws = CreateObject("WScript.Shell") '这里创建一个对象引用,以便在以下示例代码中使用. 'Demon注:这个变量名怎么这么猥琐(WS) 语法:(常识(Demon注:常识这个词我喜欢):作为过程使用时,不要加括号,否则出现编译器错误(参数唯一或没有时加括号不会出错,但建议不要加)) 复制代码 代码如下: ws.Run(strCommand, [intWindowStyle], [bWaitOnReturn]) [Set objExec =] ws

在VBS中定义字节数组Byte()介绍_vbs

晚上在 QQ 上看到昵称为"乱码"的好友回答了搜搜问问里一个问题: 在VBS中有办法定义字节数组么? 在VBS中有办法定义字节数组么?就是字节子类型数组(VarType是8209的那种)注意不是VB! 但是回答实在是不堪入目,连别人问什么都没搞懂,而且那人居然还满意,真不知道他在想什么. 闲来没事,我来简单回答一下.首先要搞清楚别人在问什么,VBS 是弱类型脚本语言,只有一种数据类型,称为 Variant,但是 Variant 可以进一步分为几种子类型,这里不展开,详见<VBSc

isNull函数在Transact-SQL与VBS中的不同使用之处

sql|函数 刚看了在Sql Server一段Transact-SQL 参考的联机文档中isNull的函数,发现与普通的isNull函数有不同的使用之处: 在VBS中介绍的isNull语法是IsNull(expression): 但到Mssql的T-Sql中,却出现这样的使用:ISNULL ( check_expression , replacement_value ),其中联机文档中描述为: 参数 check_expression 将被检查是否为 NULL的表达式.check_expressi