当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > 用vbs将名称截断以使其最多包含 16 个字符的代码

VBScript
用VBScript批量安装网络打印机和设置默认打印机
Vbs 脚本编程简明教程之一
vbs SendKey 用法 Sendkey 键盘对应的码表
用vbs 取得收藏夹里的所有链接名称和URL的脚本
link-view.vbs 页面链接查看
VBS读网页的代码
用VBScript写合并文本文件的脚本
vbscript ms owc 封裝代码
VbScript 封裝MS OWC(二)
vbs 注册表操作代码(添加删除)
用于修复XP中最小化程序 在任务栏显示图标的vbs脚本
完整的注册表操作实例 VBS脚本
vbs 注册表实现木马自启动
reg2vbs.vbs 将Reg文件转换为VBS文件保存 IT学习网修正版本
e是自然对数的底 e.vbs
vbs imail 密码解密
VBS Runas 自动输入密码, 明文
vbscript 三个数比较大小的实现代码
脚本 MsAgent组件 微软精灵 揪出系统自带的宠物
VBS InternetExplorer.Application的属性和方法介绍

VBScript 中的 用vbs将名称截断以使其最多包含 16 个字符的代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 52 ::
收藏到网摘: n/a

问:
您好,脚本专家!如何将名称截断以使其最多包含 16 个字符?
-- BN
答:
您好,BN。打起精神来:我们又要开始记忆长廊之旅了。曾经有个脚本专家上大学的时候,他在绿巨人公司找了一份暑期临时工,任务就是在办公室里监督华盛顿东部的芦笋收割。当时,绿巨人有一个陈旧笨重的计算机系统,用来记录芦笋的数量 - 然后再记录要付给所有收割者多少钱。这个系统有一个问题,但是(事实上,它的问题不只一个,不过 …):它被设置为姓氏最多可使用 10 个字符,而许多工人的姓都比 10 个字符要长(例如,Myer-Ackerman)。每次数据输入人员输入一个比 10 个字符长的名称时,整个系统都会锁死,因此他们的工作站常常必须重新启动。(这都是在出现 Microsoft Windows 之前的事了。)
这个脚本专家那时根本谈不上是脚本专家;事实上,他使用计算机的经验主要局限于在 Commodore 64 上玩 Zork。可是现在,作为办公室里唯一的大学生,他被委任以修复此数据输入程序的重任(幸运的是,数据库本身没有这种限制)。他的工作就是在程序试图将名称保存到数据库之前,确保截断所有多于 10 个字符的名称。
换句话说,这与您需要完成的任务非常相似。那时我们的脚本专家工作在 BASIC 的某个专有分支领域,他的解决方案就是使用 Left 函数获取某个名称的前 10 个字母,并以此来作为此工人的姓。现在,差不多 20 年之后,想想您的问题的解决方案是什么?
复制代码 代码如下:

strName = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
strName = Left(strName, 16)
Wscript.Echo strName

经典的解决方案从来不会过时,是吧?这个脚本从我们 20 年前停手的地方开始:它将一个很长的字符串(本例中为字母表)赋值给名为 strName 的变量:
strName = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
接下来是下面这行代码:
strName = Left(strName, 16)
这行代码将一个新值赋给变量 strName。那么这个新值是什么呢?它将是 strName 当前值的前 16 个字符。这就是 Left 函数的作用:它从此字符串的第一个字符开始计数,一直数到 16 个字符,就像这样:
ABCDEFGHIJKLMNOPQRSTUVWXYZ
这 16 个字符,且仅这 16 个字符,将赋给变量 strName。然后,回显 strName 的新值,我们会得到如下字符串:
ABCDEFGHIJKLMNOP
很酷吧。此脚本很有效,即使 strName 是从 2600 个字符的 26 个字符开始效果也一样:结果都是仅使用前 16 个字符。啊,但是如果字符串少于 16 个字符会怎么样?例如,此脚本会失败吗,因为它试图获取 16 个字符,而根本没有 16 个字符?
strName = "ABCD"
strName = Left(strName, 16)
Wscript.Echo strName
幸运的是答案是否定的:此脚本会顺利运行。如果某字符串少于 16 个字符,则 Left 函数只获取它所能找到的所有字符,并将此值赋值给 strName。在本例中,strName 等于 ABCD,此字符串中仅有的 4 个字符。
现在,再缅怀一下过去的美好时光。我们告诉过您当这个脚本专家正坐在他的绿巨人办公室里时,一条响尾蛇爬进来吗?这是真的。他正坐在那儿,努力思考将姓限制为 10 个字符的方法,正在这时 -- 天哪;今天的时间到了。我们必须改天再继续讲这个故事了。