ASP常用内置函数

 

  在ASP中,把带有返回值的这样的一段代码叫做函数。例如通过编写一段代码计算出一个自然数是否是质数,返回给调用程序,由于调用程序需要知道那个自然数是否是质数,所以必须要返回一个值。

  1,日期/时间函数

  这些函数包括对星期等的显示。

  (1Now函数:根据计算机系统设定的日期和时间,返回当前的日期和时间值。使用方法now()

  (2Date函数:只返回当前计算机系统设定的日期值。使用方法:date()

  (3Time函数:只返回当前计算机系统设定的时间值。使用方法:time()

  (4Year函数:返回一个代表某年的整数。使用方法:year(date),其中date参数是任意的可以代表日期的参数,比如“year(date())”就表示是从“date()”得出的日期中提取其中的整数。

  另外,还可以这样应用:“year(#5 20,2006#)”表示提取“2006520的整数值。关于“5 20,2006”,也可使用“ 5-20-2006 ”“ 5/20/2006 ”等形式表现,即某月某日某年的组合。同时注意使用“#”进行包括以表示日期值。

  (5Month函数:返回112之间的整数值,表示一年中某月。使用方法:month(date)。关于参数date的说明和year函数相同。但要注意日期的正确性,比如“#13-31-2006#”,根本就没有“13”月,肯定是错误的了。

  (6Day函数:返回131之间的整数值,表示一个月中的某天。使用方法:day(date)。关于参数date的说明和year函数相同。同样要注意日期的正确性,比如“#2-30-2006#”其中对“2”月定义的“30”日这天就是错误的。

  (7Hour函数:返回023之间的整数值,表示一天中的某个小时。使用方法:hour(time)。其中参数time是任意的可代表时间的表达式。比如“hour(time())”就表示是从“time()”得出的时间中提取其中小时的整数。同样,参数time还可以这样应用“hour(#11:45:50#)”表示从“11”“45”“50”秒中提取当前小时数。当然,定义的时间要符合时间的规范。

  (8Minute函数:返回059之间的整数值,表示一小时中的某分钟。使用方法:minute(time)time参数的说明和hour函数相同。

  (9Second函数:返回059之间的整数值,表示一分钟中的某秒。使用方法:second(time)time参数的说明和hour函数相同。

  (10Weekday函数:返回一个星期中某天的整数。使用方法:weekday(date)。关于参数date的说明和year函数相同。该函数返回值为“1”“7”,分别代表星期日星期一”……“星期六。比如当返回值是“4”时就表示星期三

  (11WeekDayName函数:返回一个星期中具体某天的字符串。相对weekday函数而言即翻译出星期几,使用方法:weekdayname(weekday)。参数weekday即星期中具体某天的数值。比如“weekdayname(weekday(date()))”就表示当前是星期几。因为“date()”表示的是当前的时间,而“weekday(date())”就表示的是一星期中具体某天的整数。

  当然weekdayname函数最终显示的字符串内容还与当前操作系统语系有关,比如中文操作系统将显示星期一这类的中文字符,而英文操作系统则显示为“Mon”Monday简写)。

  此外,在VBScript中还有一些关于时间间隔的计算函数:

  (1DateAdd函数:返回指定时间间隔的日期、时间。可以计算出相隔多少年、或相隔几个月、又或相隔几个小时等的新日期、时间。使用方法:dateadd(interval, number, date)

  其中参数interval表示需要添加的时间间隔单位。其是以字符串的形式表达的,比如“yyyy”表示年,“q”表示季度,“m”表示月份,“d”表示天数,“ww”表示周数,“h”表示小时数,“n”表示分钟数,“s”表示秒数。

  而参数number则表示添加的时间间隔数。其是以数值的形式表达的,可以为负值。参数date则要求是日期、时间的正确格式。

  比如dateadd("d",100," 2006-5-20 ")就表示2006520号以后的100天的日期值: 2006-8-28 。再比如dateadd("h",-12,"2005-5-20 10:00:00")就表示2005520号上午10点前的12小时的日期时间:2005-5-19 22:00:00

  (2DateDiff函数:返回两个日期时间之间的间隔。可计算出两个日期相隔的年代、小时数等。使用方法:datediff(interval,date1,date2)

  参数intervaldateadd函数中的interval参数内容描述相同,date1date2参数分别就是相互比较的两个日期时间。另外,当date1的日期时间值大于date2时,将显示为负值。

  比如DateDiff("yyyy"," 1982-7-18 ",date)表示某人的出生到现在已经多少年了。又比如DateDiff("d"," 1982-7-18 "," 2062-7-18 ")则计算了80年过了多少天:29220

  2,字符串处理函数

  在脚本的功能处理中,通常需要对一些字符串进行一些修饰性处理。比如过滤掉字符串中的敏感字眼以符合最终显示的要求;又比如一段较长的字符串,需要提取开头的几个字符时。

  (1Asc函数:返回字符串中第一个字母对应的ANSI字符代码。使用方法:asc(string)。其中string参数表示字符串。

  (2Chr函数:返回指定了ANSI 字符代码对应的字符。使用方法:chr(chrcode)。参数chrcode是相关的标识数字。该函数的功能和asc函数形成对应。

  比如:asc(“a”)表示小写字母“a”ANSI 字符“97”;同样chr(97)表示的就是小写字母a”。另外chr(chrcode)中参数chrcode值为031的数字时,表示不可打印的ASCII码。比如“chr(10)”表示换行符,“chr(13)”表示回车符等,这常用于输入和显示格式的转换中。

  (3Len函数:返回字符串内字符的数目(字节数)。使用方法:len(string)。比如len(“love”)的值就是4

  (4LCase函数:返回所有字符串的小写形式。使用方法:lcase(string)。比如lcase(“CNBruce”)返回为“cnbruce”

  (5UCase函数:返回所有字符串的大写形式。与lcase函数形成对应。同样,ucase(“CNBruce”)返回为“CNBRUCE”

  (6Trim函数、LTrim函数和RTrim函数:分别返回前导和后续不带空格、前导不带空格或后续不带空格的字符串内容。比如:

  trim(“ cnbruce ”)返回为“cnbruce”,前导和后续都不带空格;

  ltrim(“ cnbruce ”)返回为“cnbruce ”,前导不带空格;

  rtrim(“ cnbruce ”)返回为“ cnbruce”,后续不带空格;

  该函数常用于注册信息中,比如确保注册用户名前或后的空格。

  (7Left函数:返回从字符串的左边算起的指定数目的字符。使用方法:left(string,length)。比如left(“brousce”,5)返回为“brous”,即前五位字符。

  (8Right函数:返回从字符串的左边算起的指定数目的字符。使用方法:right(string,length)。比如right(“brousce”,4)返回为“usce”,即后四位字符。

  (9instr函数:返回某字符串在另一字符串中第一次出现的位置。比如现在查找字母“A”在字符串“A110B121C119D1861”中第一次出现的位置,则可以 instr(my_string,"A110B121C119D1861")

  (10Mid函数:从字符串中返回指定数目的字符。比如现在的“110”则应该是从字符串“A110B121C119D1861”的第2位取得3个单位的值:mid("A110B121C119D1861",2,3)

  (11Replace函数:在字符串中查找、替代指定的字符串。replace(strtobesearched,strsearchfor,strreplacewith)其中strtobesearched是字符串,strsearchfor是被查找的子字符串,strreplacewith是用来替代的子字符串。比如 replace(rscon,"<","<") 则表示将rscon中所有“<”的字符替换为“<”

  3,类型转换函数

  Cbool(string) 转换为布尔值

  Cbyte(string) 转换为字节类型的值

  Ccur(string) 转换为货币类值

  Cdate(string) 转换为日前类型的值

  Cdbl(string) 转换为双精度值

  Cint(string) 转换为整数值

  Clng(string) 转换为长整型的值

  Csng(string) 转换为单精度的值

  Cstr(var) 转换为字符串值

  Str(var) 数值转换为字符串

  Val(string) 字符串转换为数值

  4,运算函数

  Abs(nmb) 返回数子的绝对值

  Atn(nmb) 返回一个数的反正切

  Cos(nmb) 返回一个角度的余炫值

  Exp(nmb) 返回自然指数的次方值

  Int(nmb) 返回数字的整形(进位)部份

  Fix(nmb) 返回数字的整形(舍去)部份

  Formatpercent(表达式) 返回百分比

  Hex(nmb) 返回数据的16进制数

  Log(nmb) 返回自然对数

  Oct(nmb) 返回数字的8进制数

  Rnd 返回大于“0”而小于“1”的随机数,但此前需 randomize 声明产生随机种子

  Sgn(nmb) 判断一个数字的正负号

  Sin(nmb) 返回角度的正铉值

  Sqr(nmb) 返回数字的二次方根

  Tan(nmb) 返回一个数的正切值

  5,其他函数

  IsArray(var) 判断一个变量是否是数组

  IsDate(var) 判断一个变量是否是日期

  IsNull(var) 判断一个变量是否为空

  IsNumeric(var) 判断表达式是否包含数值

  IsObject(var) 判断一个变量是否是对象

  TypeName(var) 返回变量的数据类型

  Array(list) 返回数组

  Split(liststr) 从一个列表字符串中返回一个一维数组

  LBound(arrayP 返回数组的最小索引

  Ubound(array) 返回数组的最大索引

  CreateObject(class) 创建一个对象

  GetObject(pathfilename) 得到文件对象

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ASP.NET GridView控件提供了许多内置的聚合函数,如SUM,AVG,MIN,MAX和COUNT等。这些聚合函数可以使用GridView的模板字段或数据绑定表达式来实现。 以下是一个示例,显示如何在GridView使用SUM聚合函数来计算某一列的总和: ```html <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"> <Columns> <asp:BoundField DataField="ProductID" HeaderText="Product ID" /> <asp:BoundField DataField="ProductName" HeaderText="Product Name" /> <asp:BoundField DataField="UnitPrice" HeaderText="Unit Price" DataFormatString="{0:C}" /> <asp:BoundField DataField="Quantity" HeaderText="Quantity" /> <asp:TemplateField HeaderText="Total" > <ItemTemplate> <%# Eval("UnitPrice") * Eval("Quantity") %> </ItemTemplate> <FooterTemplate> <%# String.Format("{0:C}", GridView1.Rows.Cast<GridViewRow>().Sum(row => Convert.ToDecimal(((Label)row.FindControl("LabelTotal")).Text)))) %> </FooterTemplate> </asp:TemplateField> </Columns> </asp:GridView> ``` 在上面的代码,我们使用一个模板字段来计算每个产品的总价,然后在GridView的页脚使用SUM聚合函数来计算所有产品的总价。在页脚模板,我们使用LINQ查询来获取GridView所有行的总和,并使用String.Format方法来格式化结果。 请注意,我们在模板字段使用了一个Label控件来显示每个产品的总价。在页脚模板,我们使用FindControl方法来获取每个行的Label控件,并将其转换为Decimal值来进行求和运算。 除了SUM聚合函数之外,您还可以使用其他聚合函数来计算平均值,最小值,最大值和计数。只需将聚合函数的名称替换为SUM即可。例如,使用AVG聚合函数来计算某一列的平均值: ```html <FooterTemplate> <%# String.Format("{0:C}", GridView1.Rows.Cast<GridViewRow>().Average(row => Convert.ToDecimal(((Label)row.FindControl("LabelTotal")).Text)))) %> </FooterTemplate> ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值