SilkTest点滴20 – 字符串函数

字符串是SilkTest中最常用的数据类型之一,所以掌握对它的各种操作非常重要。

 

1.GetField()

 

该函数返回一个字符串中的一个段,即被某些字符分割开的一个子串。其函数原型为:

 

sSegment = GetField (sString, sDelim, iField)

 

其中sSegment是类型为string的返回值,sString是所要操作的字串,类型为string。sDelim是分割符号,可以是字符也可以是字符串。iField是返回的段序号。

 

如果没有找到相应的段,该函数返回空串“”。下面是该函数的一个例子:

 

STRING sData = “name|rank|serial#”

 

    Print (GetField (sData, “|”, 1) ) // 打印: name

 

    Print (GetField (sData, “|”, 3) ) // 打印: serial#

 

    Print (GetField (sData, “|”, 4) ) // 打印:
2.IsAlpha()

 

该函数判断一个字符串的第一个字符是否是字母。其函数原型为:

 

bTest = IsAlpha (sString)

 

bTest是返回值,当第一个字符是字母时返回TRUE,其类型为Boolean。sString是测试的字符串,类型为string。

 

注意,该函数仅仅当被测字符串的第一个字符是ASCII字母时(a~z,A~Z)返回TRUE,其他情况都返回FALSE。下面是一个例子:

 

Print (IsAlpha (“hello”)) // 打印: TRUE

 

Print (IsAlpha (“123”))  // 打印: FALSE
3.IsDigit()

 

该函数用来判断是否一个字串的第一个字符是数字(0~9),其函数原型为:

 

bTest = IsDigit (sString)

 

bTest是返回值,数据类型为Boolean。sString是待测的字符串,类型为string.

 

下面是一个该函数的使用范例:

 

Print (IsDigit (“123”))    // 打印: TRUE

 

Print (IsDigit (“hello”))  // 打印: FALSE
4.IsSpace()

 

测试一个字符串的第一个字符是否是空白字符。其函数原型如下:

 

bTest = IsSpace (sString)

 

其中bTest是结果值,为boolean类型,sString是待测字符串,类型为string。

 

下面是一个例子:

 

Print (IsSpace (” hello”)) // 打印: TRUE

 

Print (IsSpace (“world”))  // 打印: FALSE
5.Left()

 

该函数返回一个字符串从最左边开始的指定长度的字符串。其函数原型是:

 

sSubstring = Left (sString, iNumChars)

 

其中sSubstring是返回值,为string类型。sString是待测字符串,类型为string,iNumChars是指定的字符串长度,类型为integer。

 

注意,如果iNumChars是0,Left函数将会返回一个空字符串“”,如果iNumChars比待测字符串sString的总长度长,Left将会返回sString。如果iNumChars是一个负数,系统将抛出一个异常。下面是一个例子:

 

STRING s = “Borland Software”

 

Print (Left (s, 7))   // 打印: Borland

 

Print (Left (s, 20))  // 打印: Borland Software
6.Len()

 

该函数返回一个字符串的长度。其函数原型为:iLength = Len(sString),很简单,我就不介绍了。
7.Ltrim()

 

该函数将去除一个字符串最左边的所有空白字符。其函数原型为sStripped = Ltrim (sToStrip)

 

如果sToString是一个空字串“”,或者只包含空白符号,Ltrim将会返回一个空字串。

 

注意,空白符号包括空格,水平制表符,垂直制表符,回车,换行,进纸符。如果sToStrip不以空白符号开头,Ltrim将会返回sToStrip。下面是一个该函数的使用例子:

 

STRING s = ” Has whitespace “

 

Print( “>{LTrim (s)}<“) // 打印: >Has whitespace <
8.MatchStr()

 

该函数在一个字符串中寻找特定的模式是否存在。其函数原型是:

 

bFound = MatchStr (sPattern, sString)

 

其中bFound是返回值,仅当指定模式找到了,就返回TRUE,类型是boolean。sPattern是想要寻找的字符串模式,类型是string。sString是待查找字符串,类型是string。

 

注意,该函数是大小写不敏感的。也就是说,它不区分大小写。因此,下面的表达式将返回TRUE。

 

MatchStr (“*HELLO*”, “hi hello there”)
9.Right()

 

类似Left(), 请参考Left和帮助文件.
10.Rtrim()

 

类似Ltrim(),请参考Ltrim和帮助文件。
11.Space()

 

该函数返回一个指定数量的空格组成的字符串。其原型为: sSpaces = Space(iCount)

 

其中sSpaces是返回的字符串,类型为STRING.

 

iCount是想要产生的空格的数量,类型为INTEGER.

 

例如rint(“12345”+Space(10)+”67890”)

 

其打印结果为: 12345          67890
12.StrPos()

 

该函数返回指定子串的位置。其函数原型是:

 

iPos = StrPos(sSubstr, sTarget , [bBackward])

 

其中iPos是返回的位置,类型为INTEGER。sSubstr是要查找的子串值,类型为STRING。sTarget是目标字符串,类型是STRING。bBackward,可选参数,如果为TRUE,从后往前搜,否则从前往后搜。

 

一个例子:

 

STRING s = “now is the time for all the good men”

 

Print(StrPos(“the”, s))

 

结果将打印:8
13.strTran()

 

该函数将在一个字符串中执行查找替换操作。其函数原型是:

 

sChanged = StrTran(sOrig, sSearch, sReplace)

 

其中sChanged是返回的结果串,sOrig是被查找的字符串,sSearch是查找的子串,sReplace是用来替换的串,以上参数类型都为STRING。

 

一个例子:

 

STRING s = “one and two and three”

 

Print(StrTran(s, “and”, “&”)

 

将会打印: one & two & three
14.Stuff()

 

该函数用来插入或者删除字符。其函数原型是:

 

sChanged = Stuff (sOrig, iPos, iLen, sReplace)

 

其中,sChanged 是返回的字符串,类型为STRING. sOrig是将进行插入或者删除操作的字符串,类型为STRING。iPos是进行操作的位置,类型为INTEGER。iLen表示需要删除的字符个数,类型为INTEGER。sReplace是将要插入的字符串,类型为STRING。

 

一个例子:

 

STRING s = “hello there”

 

Print(Stuff(s, 7, 0, “out ”)

 

Print(Stuff(s, 7, 5, “world”)

 

输出结果为:

 

hello out there

 

hello world
15.SubStr()

 

该函数返回一个子串。其函数原型为:

 

sSubString = SubStr(sString, iPos, [iLen])

 

其中,sSubString是返回值,类型为STRING. sString是进行操作的字符串,类型为STRING. iPos是开始返回的位置,类型为INTEGER. iLen是可选项,是需要返回的字符串的长度,类型为INTEGER, 如果没有指定该参数,那么将返回iPos其后的所有字符。

 

下面是一个例子:

 

STRING sText = “How much is it”

 

STRING sItem = SubStr(sText, 5, 4)

 

Print(sItem)

 

输出结果为: much
16.Tabs()

 

该函数类似于Space(),返回指定数量的tab。其函数原型为:

 

sTabs = Tabs(iAmount)

 

其中sTabs是返回的字符串,类型为STRING. iAmount是tab的个数,类型为INTEGER
17.Trim()

 

将给定字符串前后的所有空格都去掉,其函数原型为sStripped = Trim(sToStrip),就不详细讲解了,请参考Ltrim,Rtrim和帮助文件。

Leave a comment

请输入正确的验证码