科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件无线标记语言(WML)之WMLScript函数库

无线标记语言(WML)之WMLScript函数库

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

这节会讨论标准的WML Script函数库。

作者:佚名 来源:菜鸟站长俱乐部 2007年11月22日

关键字:

  • 评论
  • 分享微博
  • 分享邮件
 6.4 string函数库

  名称:字符串
  说明:这个函数库包含了字符串程序的集合,一个字符串可以是字符数组,每个字符都有个索引,字符串的第一个字浮的索引为0,字符串的长度是字符在数组中的数目。

     你能使用一些特殊的分隔符号来界定不同的字符串,这样你就能存取这些有分隔符号予元素索引所界定出的元素,字符串中第一个元素的索引值为0,每个字符串分隔符号回分隔出两个元素,但字符是不能用来做分隔符号。

  一个空格的字符可能是下列字符其中之一:

  TAB:水平跳格定位(horizontal tabulation)
  VT:垂直跳格定位(ertival tabulation)
  FF:跳页(from feed)
  SP:空格(space)
  LF:跳行(line feed)
  CR:归位(carriage return)

  length

  程序:length(string)
  说明:传回给予字符串的长度(字符的数目)。
  参数:string=字符串
  回传值:整数或invalid
  例外状况:无
  范例:var a="ABC";
     var b=string.length(a); //b=3
     var c=string.length(""); //c=0
     var d=string.length(342); //d=3

  is Empty

  程序:is Empty(string)
  说明:如果字符串长度为零则传回布尔值true,反之传回false。
  参数:string=字符串
  回传值:布尔值或invalid
  例外状况:无
  范例:var a="Hello;
     var b="";
     var c=sting.isEmpty(a); //c=false
     var c=sting.isEmpty(b); //d=ture
     var c=sting.isEmpty(ture); //e=false

  charAt

  程序:charAt(sting.index)
  说明:回传string中index值所指定的字符。
  参数:string=字符数
     index=数字(回传回index所指定的字符)
  回传值:字符串或invalid
  例外状况:如果index的值超过字符串的范围,则回传空字符串("")
  范例:var a="My name is Joe"
     var b=sting.charAt(a,0); //b= "M"
     var c=sting.charAt(a,100); //c= ""
     var d=sting.charAt(34.0); //d="3"
     var e=sting.charAt(a,"first"); //e=invalid

  subString

  程序:subString(string,startIndex,length)
  说明:传回一个新的字符串来代替所给予的字符串, 这个新字符串给定的索引值开始,它的长度有所给予的length决定。
     如果startIndex小于0,则会0来当作索引值。
     如果length大于剩余字符的数目,则lenght会由剩余的字符数来代替。
     如果startIndex予lenght是浮点数,则会先使用Float.int()来计算正确的整数值。
  参数:string=字符数
     startIndex=数字
     lenght=数字
  回传值:字符串或invalid
  例外状况:如果startIndex大于最后的索引值,则回传会空字符串("")
       如果lenght<=0,传会空字符串("")
  范例:var a="ABCD";
     var b=String.subString(a,1,2); //b="BC"
     var c=String.subString(a,2,5); //c="CD"
     var d=String.subString(1234,0,2); //d="12"

  find

  程序:find(string,substring)
  说明:传会所要寻找的字符串substring和原始字符串string相符的第一个字符的索引值。
     如果没有相符,则传会整数值-1。
     两个字符传如果是相等的话,是定义为不符合。
  参数:string=字符串
     substring=字符串
  回传值:整数或invalid
  例外状况:无
  范例:var a="abcde";
     var b=String.find(a,"cd"); //b=2
     var c=String.find(34.2,"de"); //c=-1
     var d=String.find(a,"gz"); //d=-1
     var e=String.find(34,"3"); //e=0

  replace

  程序:eplace(tring,oldSubString,newSubString)
  说明:传会新字符串,这个新字符串是由和所给予字符串string相符的旧字符传oldSubString使用新字符串newSubString字符串加以代替。如果两字符串相等的话,定义为相符。
  参数:string=字符串
     oldSubString=字符串
     newSubString=字符串
  回传值:字符串或invalid
  例外状况:无
                                                                                           范例:var a="Hello Joe.What is up Joe?";
   var newName="Don";
   var oldName="Joe";
   var c=String.replace(a,oldName,newName); //c="Hello Don.What is up Don?"
   var d=Stri  ng.replace(a,oldName,newName); //c="Hello Don.What is up Don?"

  element

  程序:element(string,separator)
  说明:回传分隔符号separator所分隔的字符串string的元素数目,空字符串("")是有效的元素,这表示了这程序永远不会回传一个小于或等于0得值。
  参数:string=字符串
     separator=字符串
  回传值:整数或invalid
  例外状况:如果separator是个空字符串,则回传invalid
  范例:var a="My name is Joe;Age 50";
     var b=String.elements(a,"");//b=6
     var c=String.elements(a,";");//c=3
     var d=String.elements("",";");//d=1
     var e=String.elements("a","");//e=1
     var f=String.elements(";",";");//f=2
     var g=String.elements(";;,;",";,");//g=4
     separator=;

  elementAt

  程序:elementAt(string,index,separator)
  说明:寻找字符串string的第index个元素,这些元素是由分隔符号separator所加以分开,并回传相对应的元素。
     如果index值小于0,则回传第一个元素。
     如果index值大于元素的数目,则回传最后一个元素。
     如果字符串为空字符串,则回传空字符串。
     如果index值为浮点数,则须先使用Float.int()来计算出正确的索引值。
  参数:string=字符串
     index=数字
     separator=字符串
  回传值:字符串或invalid
  例外状况:如果separator是个空字符串,则回传invalid
  范例:var a="Hello Joe.What is up Joe?";
     var b=String.elementAt(a,0,""); //b="My"
     var b=String.elementAt(a,14,";"); //c=" "
     var b=String.elementAt(a,1,";"); //d="Age 50"

  removeAt

  程序:removeAt(string,index,separator)
  说明:将符合索引值index的分隔号separator与元素有字符串string中移出,并回传这个新字符串。
     如果index值小于0,则回传第一个元素。
     如果index值大于元素的数目,则回传最后一个元素。
     如果字符串为空字符串,则回传空字符串。
     如果index值为浮点数,则须先使用Float.int()来计算出正确的索引值。
  参数:string=字符串
     element=字符串
     index=数字
     separator=字符串
  回传值:字符串或invalid
  例外状况:如果separator是个空字符串,则回传invalid
  范例:var a=" A A;B C D";
     var s= "";
     var c=String.removeAt(a,1,s); //b="A B C D"
     var d=String.removeAt(a,0,";"); //c=" B C D"
     var e=String.removeAt(a,14,";"); //d="A A"

  replaceAt

  程序:replaceAT(string,index,separator)
  说明:在特定的index中的元素,使用所给予的元素element来代替,并回传这个新字符串。
     如果index值小于0,则回传第一个元素。
     如果index值大于元素的数目,则回传最后一个元素。
     如果字符串为空字符串,则回传空字符串。
     如果index值为浮点数,则须先使用Float.int()来计算出正确的索引值。
  参数:string=字符串
     element=字符串
     index=数字
     separator=字符串
  回传值:字符串或invalid
  例外状况:如果separator是个空字符串,则回传invalid
  范例:var a= "B C; E";
     var s="";
     var d=String.replaceAT(a,"A",0,s); //b="A C;E"
     var e=String.replaceAT(a,"F",5,";"); //d="B C;F"

  InsertAt

  程序:insertAt(string,index,separator)
  说明:将元素element与相对应的分隔符号separator插入与原始字符串string,在特定的element中的元素
     如果index值小于0,则0会用来当索引值。
     如果index值大于元素的数目,则元素element会附加上字符串string的为端。
     如果字符串string为空字符串,则回传包含所给予元素element的新字符串。
     如果index值为浮点数,则需先使用Float.int()来计算出正确的索引值。
  参数:string=字符串
     element=字符串
     index=数字
     separator=字符串
  回传值:字符串或invalid
  例外状况:如果separator是个空字符串,则回传invalid
  范例:var a= "B C; E";
     var s="";
     var b=String.insertAt(a,"A",0,s); //b="A B C;E"
     var c=String.insertAt(a,"X",3,s); //c="B C;E X"
     var d=String.insertAt(a,"D",1,";"); //d="B C;D;E"
     var e=String.insertAt(a,"F",5,";"); //e="B C;E;F"

  squeeze

  程序:squeeze(string)
  说明:将字符串string中所有连续的空格减少为一个空格。
  参数:stromg=字符串
  回传值:字符串或invalid
  例外状况:无
  范例:var a="Hello";
     var b="Bye Jon.See you!";
     var c=String.squeeze(a); //c="Hello"
     var d=String.squeeze(b); //d="Bye Jon.See you!"

  trim

  程序:trim(string)
  说明:将字符串string中所有开头与连续的空格删除。
  参数:string=字符串
  回传值:字符串或invalid
  例外状况:无
  范例:var a="Hello";
     var b="Bye Jon.See you!";
     var c=String.squeeze(a); //c="Hello"
     var d=String.squeeze(b); //d="Bye Jon.See you!"

  compare

  程序:compare(string,string2)
  说明:这个程序的回传值会指出string1与string2在语汇上关系,这个关系是基于自然字集的字符码之间,其回传值如下:
     如果string1小于string2,传会-1。
     如果string1等于string2,传会-1。
     如果string1大于string2,传会-1。
  参数:string1=字符串
     string2=字符串
  回传值:整数或invalid
  例外状况:无
  范例:var a="Hello";
     var b="Hello";
     var c=String.compare(a,b); //c=0
     var d=String.compare("Bye","Jon"); //d=-1
     var e=String.compare("Jon","Bye"); //e=1

  toString

  程序:toString(value)
  说明:回传一个能表示所给予的值value的字符串,这个程序跟WML Script的转换是一样的,除了invlaid值会回传一个"invalid"字符串。
  参数:value=任意值
  回传值:字符串
  例外状况:无
  范例:var a=string.toString(12); // a="12"
     var a=string.toString(true); // b="true"

  format

  程序:format(format,value)
  说明:将给予的值value转换成字符串,并依照所给予的格式format提供的格式化的字符串,这个格式字符串只能由一种特定格式,并能放置于字符串的任何地方,如果超过一种以上的格式需要使用,则能会使用最左边的格式,至于其他格式则有空字符串代替,这些格式如下:

  [width][.precision]type
  width参数为非负的是近制整数,这个参数控制与显现字符的最小数目,如果输出的字数小于指定的宽度width,则会在字符串的左边加上空白,直到符合最小宽度的要求,width参数永远不会是值value被删减,如果输出的字数大于特定的宽度或并没指定宽度的话,value中所有的字符都会被显现。

  precision参数是个非负的十进制整数,这个引号之前必须限价上(.)的符号,其目的是用来设定输入值的精确度,这个值的解议会跟给予的格式有关:

  d 界定数字最小的显现数目,如果value中数字的数目超过precision的值,输入值会在其左边加上0,如果数字的数目超过precision值,value的值并不会被删减,预设的precision值为1,如果precision值设定为0,而且value页被转换成0,则结果将是一个空字符串。

  f 界定十进制小数后的数字数目,如果十进制的小数点出现了,在小数点之后至少要有一位数,这个值会被四舍五入到近似的数字数值,预设的precision为6,如果precision为0或小数点(.)后没有数字,则不会显现小数点,当value值的小数点后数字数目小于precision的值,字母0为被加入直到填满栏位(如:String.format("%2.3f",1.2)会是"1.200")

  s 界定字符所要显现的最大数目,预设值是显现所有的字符,当width值大于precision值,width值是可以忽略的,跟width值不同的是,precision只可能会造成浮点数值的四舍五入或输入值的删减。

  type参数是唯一格式的参数,他出现在任何的格式栏为选项之后,type字符决定了所给予的value将会解译成整数,浮点数或字符串,支持的type参数如下:

   d 整数:输入值的格式[-]dddd,这里的dddd是一个或以上的十进制数字。

   f 浮点数:输入值的格式[-]dddd.dddd,这里的dddd是一个或以上的十进制数字,在小数点之前的数字数目和数字的大小有关,小数点之后的数字数目和精确度有关。

   s 字符串:字符的显现跟精确度有关。

  百分比字符(%)在格式字符串中能使用额外的百分比字符加以表示(%%)。

  参数:format=字符串
  value=任意值
  回传值:字符串或invalid
  例外状况;无效的格式会回传invalid值。
  范例:var a=45;
     var b=-45;
     var c="now";
     var d=1.2345678;
     var e=String.format("e:%6d",a); //e="e:45"
     var e=String.format("%6d",b); //f="-45"
     var e=String.format("e:%6d",a); //g="0045"
     var e=String.format("%6.4d",b); //h="-0045"
     var e=String.format("Do it %s",c); //i="Do it now"
     var e=String.format("%3f",d); //j="1.2345678"
     var e=String.format("%10.2f%%",a); //k="1.23%."
     var e=String.format("%3f %2f",a); //l="1.234567."
     var e=String.format("%.0d",0); //m=""
     var e=String.format("%.7d","Int"); //n="invalid"
     var e=String.format("%s",ture); //o="ture"

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章