📄 8-12-1.cfm.htm
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>使用字符串函数</title>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
</head>
<body>
<font FACE="宋体" SIZE="5"><b>
<p ALIGN="JUSTIFY">使用字符串函数</p>
</b></font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">VBscript包括大量用于操作字符串的函数。当你需要操作来自HTML表单或数据库的数据时,你会发现这些函数非常有用。你可以用这些函数来拼接字符串,抽取字符串,搜索字符串,和比较字符串。</p>
</font><font FACE="宋体"><b>
<p ALIGN="JUSTIFY">拼接字符串</p>
</b></font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">当你需要用短的字符串构造长字符串时,要用到拼接运算符(&)。下面的例子用短的表达式构造了一个句子:</p>
<p ALIGN="JUSTIFY"><%</p>
<p ALIGN="JUSTIFY">exp1=</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">The
house </font><font SIZE="3">”</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">exp2=</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">is on
a </font><font SIZE="3">”</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">exp3=</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">hill.</font><font
SIZE="3">”</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">sentence=exp1&exp2&exp3</p>
<p ALIGN="JUSTIFY">%><br>
</p>
<p ALIGN="JUSTIFY">你也可以用加号(+)来拼接字符串。但是,这种方法不值得推荐。与&运算符不同,+运算符并不保证返回一个字符串。考虑如下的例子:</p>
<p ALIGN="JUSTIFY"><%</p>
<p ALIGN="JUSTIFY">myvar=1</p>
<p ALIGN="JUSTIFY">%></p>
<p ALIGN="JUSTIFY"><%=</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">The
value of myvar is:</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">&myvar%></p>
<p ALIGN="JUSTIFY"><%=</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">The
value of myvar ia:</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">+myvar%></p>
<p ALIGN="JUSTIFY">当用拼接运算符&来输出myvar的值时,语句执行正常。运算符&自动把变量myvar的值转换为字符串。但是,当使用运算符+时,将出现错误,因为这个语句实际上会试图将myvar的值加到字符串表达式上。</p>
<p ALIGN="JUSTIFY">如果你有一个字符数组,你可以用函数JOIN()连接数组中所有的字符串。这里有一个例子:</p>
<p ALIGN="JUSTIFY"><%</p>
<p ALIGN="JUSTIFY">dim myarray(2)</p>
<p ALIGN="JUSTIFY">myarray(0)=</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">The
house </font><font SIZE="3">”</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">myarray(1)=</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">is
on a </font><font SIZE="3">”</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">myarray(2)=</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">hill.</font><font
SIZE="3">”</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">sentence=JOIN(myarray)</p>
<p ALIGN="JUSTIFY">%></p>
<p ALIGN="JUSTIFY">当这段脚本执行后,变量sentence的值等于数组myarray中所有的字符串连接在一起。要使用这个函数,myarray必须是一个一维数组(一个列表)。你可以给该函数提供一个可选的第二参数,作为与空格不同的分隔符:</p>
<p ALIGN="JUSTIFY">sentence=JOIN(myarray,</font><font SIZE="3">”</font><font
FACE="宋体" SIZE="3">/</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">)</p>
<p ALIGN="JUSTIFY">在这个例子中,函数JOIN()的返回值是The house/is on
a/hill.</p>
<p ALIGN="JUSTIFY">如果你需要加入一些空格,你可以使用函数SPACE(),象这样:</p>
<p ALIGN="JUSTIFY">sentence=</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">Over</font><font
SIZE="3">”</font><font FACE="宋体" SIZE="3">&SPACE(20)&</font><font SIZE="3">”</font><font
FACE="宋体" SIZE="3">There.</font><font SIZE="3">”</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">在这个例子中,变量sentence的值等于被20个空格隔开的Over和There。但是,你应当注意,由于HTML忽略多余的空格,这个函数实际上不会向屏幕上输出附加的空格。如果你确实需要用这个函数构造附加的空格,你必须把输出放在HTML的<PRE>标签之内,象这样:</p>
<p ALIGN="JUSTIFY"><%</p>
<p ALIGN="JUSTIFY">sentence=</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">Over</font><font
SIZE="3">”</font><font FACE="宋体" SIZE="3">&SPACE(20)&</font><font SIZE="3">”</font><font
FACE="宋体" SIZE="3">There.</font><font SIZE="3">”</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">%></p>
<p ALIGN="JUSTIFY"><PRE><%=sentence%></PRE></p>
<p ALIGN="JUSTIFY">这样做的缺点是HTML将用固定宽度的字体显示<PRE>标签内的所有内容(对大多数浏览器,用Courier字体)。这通常是不受人欢迎的。代替使用函数SPACE(),考虑使用这样的脚本:</p>
<p ALIGN="JUSTIFY"><%</p>
<p ALIGN="JUSTIFY">sentence=</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">Over</font><font
SIZE="3">”</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">for i=1 to 20</p>
<p ALIGN="JUSTIFY">sentence=sentence&</font><font SIZE="3">”</font><font
FACE="宋体" SIZE="3">&nbsp;</font><font SIZE="3">”</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">next</p>
<p ALIGN="JUSTIFY">sentence=sentence&</font><font SIZE="3">”</font><font
FACE="宋体" SIZE="3">There.</font><font SIZE="3">”</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">%></p>
<p ALIGN="JUSTIFY"><%=sentence%><br>
</p>
<p ALIGN="JUSTIFY">在这个例子中,特殊的HTML代码,不间断空格(&nbsp;),被用来构造空格。在老的浏览器中,这样作是不行的。代码&nbsp;是HTML中与真正的空格字符最接近的东西。</p>
<p ALIGN="JUSTIFY">最后,如果你想以任何次数重复任何单个字符,你可以使用函数STRING(),如下例所示:</p>
<p ALIGN="JUSTIFY"><%</p>
<p ALIGN="JUSTIFY">sentence=STRING(500,</font><font SIZE="3">”</font><font FACE="宋体"
SIZE="3">!</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">)</p>
<p ALIGN="JUSTIFY">%></p>
<p ALIGN="JUSTIFY"><%=sentence%></p>
<p ALIGN="JUSTIFY">这段脚本在屏幕上打印500个感叹号。你可以对任何长于一个字符的字符串使用这个函数。如果你需要重复一个更长的表达式,可以使用循环。</p>
</font>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -