查看文章
 
ASP(VBScript)函数大全(二)
2008-05-02 17:36

Filter 函数

返回下标从零开始的 数组,其中包含以特定过滤条件为基础的字符串数组的子集。

Filter(InputStrings, Value[, Include[, Compare]])

参数

InputStrings

必选项。一维数组,要在其中搜索字符串。

Value

必选项。要搜索的字符串。

Include

可选项。Boolean 值,指定返回的子字符串是否包含 Value。如果 IncludeTrueFilter 将返回包含子字符串 Value 的数组子集。如果 Include FalseFilter 将返回不包含子字符串 Value 的数组子集。

Compare

可选项。数字值指出使用的比较字符串 类型.请参阅值设置部分.

设置

Compare 参数可以有以下值:

常数 描述
vbBinaryCompare 0 执行二进制比较。
vbTextCompare 1 执行文本比较。

说明

如果在 InputStrings 中没有找到与 Value 匹配的值,Filter 将返回空数组。如果 InputStringsNull 或者不是一维数组,则会发生错误。

Filter 函数返回的数组仅包含足以包含匹配项数目的元素。

下面例子利用 Filter 函数返回包含搜索条件 "Mon" 的数组:

Dim MyIndex
Dim MyArray (3)
MyArray(0) = "Sunday"
MyArray(1) = "Monday"
MyArray(2) = "Tuesday"
MyIndex = Filter(MyArray, "Mon") 'MyIndex(0) 包含 "Monday"

Fix、Int 函数

返回数字的整数部分。

Int(number)

Fix(number)

number 参数可以是任意有效的数值表达式。如果 number 参数包含 Null,则返回 Null

说明

IntFix 函数都删除 number 参数的小数部分并返回以整数表示的结果。

IntFix 函数的区别在于如果 number 参数为负数时,Int 函数返回小于或等于 number 的第一个负整数,而 Fix 函数返回大于或等于 number 参数的第一个负整数。例如,Int 将 -8.4 转换为 -9,而 Fix 函数将 -8.4 转换为 -8。

Fix(number) 等同于:

Sgn(number) * Int(Abs(number))

下面的示例说明 IntFix 函数如何返回数字的整数部分:

MyNumber = Int(99.8)           ' 返回 99MyNumber = Fix(99.2)           ' 返回 99MyNumber = Int(-99.8)          ' 返回 -100MyNumber = Fix(-99.8)          ' 返回-99MyNumber = Int(-99.2)          ' 返回 -100MyNumber = Fix(-99.2)          ' 返回 -99

FormatCurrency()

函数返回表达式,此表达式已被格式化为货币值

表达式 FormatCurrency(Expression [, Digit [, LeadingDigit [, Paren [, GroupDigit]]]])

允许数据类型: Digit 指示小数点右侧显示位数的数值。默认值为 -1,指示使用的是计算机的区域设置; LeadingDigit 三态常数,指示是否显示小数值小数点前面的零。

实例: <%=FormatCurrency(34.3456)%>

返回结果: $34.35

FormatDateTime()

函数返回表达式,此表达式已被格式化为日期或时间

表达式 FormatDateTime(Date, [, NamedFormat])

允许数据类型: NamedFormat 指示所使用的日期/时间格式的数值,如果省略,则使用 vbGeneralDate.

实例: <%=FormatDateTime("09/9/00", vbLongDate)%>

返回结果: Sunday, September 09, 2000

FormatNumber()

函数返回表达式,此表达式已被格式化为数值.

表达式 FormatNumber(Expression [, Digit [, LeadingDigit [, Paren [, GroupDigit]]]])

允许数据类型: Digit 指示小数点右侧显示位数的数值。默认值为 -1,指示使用的是计算机的区域设置。; LeadingDigit i指示小数点右侧显示位数的数值。默认值为 -1,指示使用的是计算机的区域设置。; Paren 指示小数点右侧显示位数的数值。默认值为 -1,指示使用的是计算机的区域设置。; GroupDigit i指示小数点右侧显示位数的数值。默认值为 -1,指示使用的是计算机的区域设置。.

实例: <%=FormatNumber(45.324567, 3)%>

返回结果: 45.325

FormatPercent()

函数返回表达式,此表达式已被格式化为尾随有 % 符号的百分比(乘以 100 )。 (%)

表达式 FormatPercent(Expression [, Digit [, LeadingDigit [, Paren [, GroupDigit]]]])

允许数据类型: 同上.

实例: <%=FormatPercent(0.45267, 3)%>

返回结果: 45.267%

GetLocale 函数

返回当前区域设置 ID 值。

GetLocale()

说明

locale 是用户参考信息集合,与用户的语言、国家和文化传统有关。locale 决定键盘布局、字母排序顺序和日期、时间、数字与货币格式。

返回值可以是任意一个 32-位 的值,如 区域设置 ID所示:

下面举例说明 GetLocale 函数的用法。要使用该代码,请复制标准HTML 文件中 <BODY&gtl 标志之间的所有内容。

Enter Date in UK format: <input type="text" id="UKDate" size="20"><p>
Here's the US equivalent: <input type="text" id="USdate" size="20"><p>
<input type="button" value="Convert" id="button1"><p>
Enter a price in German: &nbsp; <input type="text" id="GermanNumber" size="20">
<p>
Here's the UK equivalent: <input type="text" id="USNumber" size="20"><p>
<input type="button" value="Convert" id="button2"><p><script language="vbscript">
Dim currentLocale
' Get the current locale
currentLocale = GetLocaleSub Button1_onclick
         Dim original
         original = SetLocale("en-gb")
         mydate = CDate(UKDate.value)
         ' IE always sets the locale to US English so use the
         ' currentLocale variable to set the locale to US English
         original = SetLocale(currentLocale)
         USDate.value = FormatDateTime(mydate,vbShortDate)
End SubSub button2_onclick
         Dim original
         original = SetLocale("de")
         myvalue = CCur(GermanNumber.value)
         original = SetLocale("en-gb")
         USNumber.value = FormatCurrency(myvalue)
End Sub</script> 

GetObject 函数

返回对文件中 Automation 对象的引用。

GetObject([pathname] [, class])

参数

Pathname

可选项。字符串,包含待检索对象的文件的完整路径和名称。如果省略 pathname 则必须有 class

Class

可选项。字符串,对象的类。

class 参数的语法格式为 appname.objectype,其中包括以下部分:

参数

appname

必选项。字符串,提供对象的应用程序名称。

objectype

必选项。字符串,要创建的对象的类型或类。

说明

使用 GetObject 函数可以访问文件中的 Automation 对象,而且可以将该对象赋值给对象变量。使用 Set 语句将 GetObject 返回的对象赋值给对象变量。例如:

Dim CADObject
Set CADObject = GetObject("C:\CAD\SCHEMA.CAD")

在执行上述代码时,就会启动与指定路径名相关联的应用程序,同时激活指定文件中的对象。如果 pathname 是零长度字符串 (""),GetObject 返回指定类型的新对象实例。如果省略 pathname 参数,GetObject 将返回指定类型的当前活动对象。如果没有指定类型的对象,就会出现错误。

某些应用程序允许只激活文件的一部分,方法是在文件名后加上一个惊叹号 (!) 以及用于标识要激活的文件部分的字符串。有关创建这种字符串的详细信息,请参阅创建对象的应用程序的有关文档。

例如,在绘图应用程序中,一个存放在文件中的图可能有多层。可以使用下述代码来激活图 SCHEMA.CAD 中的某一层:

Set LayerObject = GetObject("C:\CAD\SCHEMA.CAD!Layer3")

如果没有指定对象的类,则 Automation 会根据所提供的文件名,确定要启动的应用程序以及要激活的对象。但是,有些文件可能支持多个对象类。例如,图可能支持三种不同类型的对象:Application 对象、Drawing 对象和 Toolbar 对象,所有这些都是同一个文件中的一部分。使用可选项的 class 参数可以指定文件中要激活的对象。例如:

Dim MyObject
Set MyObject = GetObject("C:\DRAWINGS\SAMPLE.DRW", "FIGMENT.DRAWING") 

在上述样例中,FIGMENT 是绘图应用程序的名称,而 DRAWING 则是它支持的一种对象类型。对象被激活之后,就可以在代码中使用所定义的对象变量来引用它。在前面的例子中,可以使用对象变量 MyObject 访问新对象的属性和方法。例如:

MyObject.Line 9, 90
MyObject.InsertText 9, 100, "嗨,你好!"
MyObject.SaveAs "C:\DRAWINGS\SAMPLE.DRW"

注意 在对象的当前实例存在,或者要用已加载的文件创建对象时,请使用 GetObject 函数。如果没有当前实例,并且不准备使用已加载的文件启动对象,请使用 CreateObject 函数。

如果对象已注册为单个实例的对象,则无论执行多少次 CreateObject,都只能创建该对象的一个实例。若使用单个实例对象,当使用零长度字符串 ("") 语法调用时,GetObject 总是返回同一个实例,而如果省略 pathname 参数,则会出现错误。

GetRef 函数

返回一个指向一过程的引用,此过程可绑定某事件。

Set object.eventname = GetRef(procname)

参数

object

必选项。事件所关联的对象的名称。

eventname

必选项。要与函数绑定的事件的名称。

procname

必选项。该字符串中包含 SubFunction 过程的名称,该过程与事件关联。

说明

GetRef 函数可以用来将 VBScript 过程 (FunctionSub) 与 DHTML (动态 HTML)页面中可用的任何事件联系在一起。DHTML 对象模型为不同对象提供了与各种可用事件有关的信息。

在其他脚本和程序设计语言中,GetRef 所提供的功能被称为函数指针,即它指向了在指定事件发生时要执行的过程的地址。

下面的例子说明了 GetRef 函数的使用:

<SCRIPT LANGUAGE="VBScript">Function GetRefTest()
         Dim Splash
         Splash = "GetRefTest Version 1.0"         & vbCrLf
         Splash = Splash & Chr(169) & " YourCompany 1999 "
         MsgBox Splash
End FunctionSet Window.Onload = GetRef("GetRefTest")
</SCRIPT>

Hex 函数

返回表示十六进制数字值的字符串。

Hex(number)

number 参数是任意有效的表达式。

说明

如果 number 参数不是整数,则在进行运算前将其四舍五入为最接近的整数。

如果 number 是 Hex 返回
Null Null。
Empty 零 (0)。
其他数 最大到八位的十六进制字符。

您可以通过在数字前面添加前缀 &H 来表示十六进制数。例如,在十六进制计数法中,&H10 表示十进制数 16。

下面的示例利用 Hex 函数返回数字的十六进制数:

Dim MyHex
MyHex = Hex(5)      ' 返回 5MyHex = Hex(10)   ' 返回AMyHex = Hex(459)   ' 返回 1CB

Hour()

函数以24时返回小时数.

表达式 Hour(time)

允许数据类型:

实例: <%=Hour(#4:45:34 PM#)%>

返回结果: 16

(Hour has been converted to 24-hour system)

InputBox 函数

在对话框中显示提示,等待用户输入文本或单击按钮,并返回文本框内容。

InputBox(prompt[,
title][,default][,xpos][,ypos][,helpfile,context])

参数

prompt

字符串表达式,作为消息显示在对话框中。prompt 的最大长度大约是 1024 个字符,这取决于所使用的字符的宽度。如果 prompt 中包含多个行,则可在各行之间用回车符 (Chr(13))、换行符 (Chr(10)) 或回车换行符的组合 (Chr(13) & Chr(10)) 以分隔各行。

Title

显示在对话框标题栏中的字符串表达式。如果省略 title,则应用程序的名称将显示在标题栏中。

Default

显示在文本框中的字符串表达式,在没有其它输入时作为默认的响应值。如果省略 default,则文本框为空。

Xpos

数值表达式,用于指定对话框的左边缘与屏幕左边缘的水平距离(单位为缇)。如果省略 xpos,则对话框会在水平方向居中。

Ypos

数值表达式,用于指定对话框的上边缘与屏幕上边缘的垂直距离(单位为缇)。如果省略 ypos,则对话框显示在屏幕垂直方向距下边缘大约三分之一处。

Helpfile

字符串表达式,用于标识为对话框提供上下文相关帮助的帮助文件。如果已提供 helpfile,则必须提供 context

Context

数值表达式,用于标识由帮助文件的作者指定给某个帮助主题的上下文编号。如果已提供 context,则必须提供 helpfile

说明

如果同时提供了 helpfilecontext,就会在对话框中自动添加“帮助”按钮。

如果用户单击确定或按下 ENTER,则 InputBox 函数返回文本框中的内容。如果用户单击取消,则函数返回一个零长度字符串 ("")。

下面例子利用 InputBox 函数显示一输入框并且把字符串赋值给输入变量:

Dim Input
Input = InputBox("输入名字") 
MsgBox ("输入:" & Input)

Instr()

函数返回字符或字符串在另一个字符串中第一次出现的位置.

表达式 Instr([start, ] strToBeSearched, strSearchFor [, compare])

允许数据类型: Start为搜索的起始值,strToBeSearched接受搜索的字符串 strSearchFor要搜索的字符.compare比较方式(详细见ASP常数)

实例: <%

strText = "This is a test!!"

pos = Instr(strText, "a")

response.write pos

%>

返回结果: 9

InstrRev()

函数同上,只是从字符串的最后一个搜索起

表达式 InstrRev([start, ] strToBeSearched, strSearchFor [, compare])

允许数据类型: 同上.

实例: <%

strText = "This is a test!!"

pos = InstrRev(strText, "s")

response.write pos

%>

返回结果: 13

Int()

函数返回数值类型,不四舍五入。

表达式 Int(number)

允许数据类型:

实例: <%=INT(32.89)%>

返回结果: 32

IsArray()

函数判断一对象是否为数组,返回布尔值 .

表达式 IsArray(name)

实例: <%

strTest = "Test!"

response.write IsArray(strTest)

%>

返回结果: False

IsDate()

函数判断一对象是否为日期,返回布尔值

表达式 IsDate(expression)

实例: <%

strTest = "9/4/2000"

response.write IsDate(strTest)

%>

返回结果: True

IsEmpty()

函数判断一对象是否初始化,返回布尔值.

表达式 IsEmpty(expression)

实例: <%

Dim i

response.write IsEmpty(i)

%>

返回结果: True

IsNull()

函数判断一对象是否为空,返回布尔值.

表达式 IsNull(expression)

实例: <%

Dim i

response.write IsNull(i)

%>

返回结果: False


类别:asp相关||添加到搜藏 |分享到i贴吧|浏览(223)|评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
     

   
帮助中心 | 空间客服 | 投诉中心 | 空间协议
©2012 Baidu