aardio 文档

拆分合并

请参考:数据类型 - 字符串 字符串连接操作符

截取字符串

  1. string.slice

    原型:

    substr = string.slice(str,i,j=-1,chars=false );

    说明:

    从字符串中截取从位置i到位置j的字符串,j为可选参数。
    如果i,j为负数,则从右侧倒数计数(-1表示字符串最后一个字符)。 如果i,j没有指定一个有效的截取范围,则返回一个空字符串(而不是null);

    最后一个参数 @chars 是可选参数,默认为 false,
    该参数影响计数方式,如果为 false 则按字节计数,汉字有多个字节(注意UTF-8是变长编码) 。如果为 true , 则按字符计数,一个汉字计为一个字符.

    示例:

    import console;
    console.log(string.slice("abcdefg",-5,-4) )
    
  2. string.left

    原型:

    substr = string.left(str,n,chars=false);

    说明:

    在字符串左侧截取n个字符,如果n没有指定一个有效的截取范围,
    则返回一个空字符串(而不是null);

    参数chars如果为false则按字节计数,一个汉字有多个字节.
    如果为true,则按字符计数,一个汉字计为一个字符.

  3. string.right

    原型:

    substr = string.right(str,n,chars=false);

    说明:

    在字符串右侧截取 n 个字符,如果 n 没有指定一个有效的截取范围,则返回一个空字符串(而不是null);

    参数 chars 如果为false则按字节计数,一个汉字有多个字节.
    如果为true,则按字符计数,一个汉字计为一个字符.

清除字符串首尾字符

  1. string.trim

    原型:

    substr = string.trim(str\[,space\]);

    说明:

    去掉字符串首尾指定字符,可以指定单个字符,或一组需要在首尾去掉的字符组成的字符串。 如果省略space参数,则清除所有空白字符,包含空格(' ')、制表符('\t')、回车('\r')、换行('\n')、垂直制表符('\v')或翻页('\f') 等。

  2. string.trimleft

    原型:

    substr = string.trimleft(str\[,space\]);

    说明:

    去掉字符串开始的指定字符,可以指定单个字符,或一组需要在首尾去掉的字符组成的字符串。
    如果省略space参数,则清除所有空白字符,包含空格(' ')、制表符('\t')、CR('\r')、换行('\n')、垂直制表符('\v')或翻页('\f') 等。

  3. string.trimright

    原型:

    substr = string.trimright(str\[,space\]);

    说明:

    去掉字符串尾部的指定字符,可以指定单个字符,或一组需要在首尾去掉的字符组成的字符串。
    如果省略space参数,则清除所有空白字符,包含空格(' ')、制表符('\t')、CR('\r')、换行('\n')、垂直制表符('\v')或翻页('\f') 等。

拼接字符串

原型:

string.concat(str,str2[,...])

说明:

拼接字符串,与 ++ 连接操作符不同的是:
string.concat会忽略null值,而使用++操作符连接null空值时会抛出异常。
如果无参数,或所有参数为null,string.concat返回null.

如果需要连接多个字符串,而允许其中有null参数,
可以使用string.concat替代连接操作符

拆分字符串数组 #

原型:

string.split(str,separator,maxLength)

拆分字符串并返回数组

说明:

str 参数指定要拆分的字符串。
separator 参数可使用字节码或字符串指定分隔符。
maxLength 则用于限定反回数组的最大长度,默认不指定则不限制返回数组长度。

  1. 按单字符拆分

    separator 参数为置于单引号中的单个字符,这是速度最快的拆分方法

    示例:

    import console;
    
    var str = "123ab456ab789ab";
    var t = string.split(str,'a'); //使用单个分隔字符拆分字符串
    
    console.log(table.unpack(t) );
    
  2. 按多个分隔字符(分隔串)拆分

    separator 参数为包含多个分隔字符的普通字符串,分隔符与分隔符之间返回空元素

    示例:

    import console;
    
    str = "123ab456ab789ab";
    t = string.split(str,"ab"); //使用分隔串"ab"拆分字符串
    
    console.log( #t ); //数组长度为6
    console.log(table.unpack(t) );
    
  3. 按字符串拆分

    separator 参数为普通字符串,此字符串被包含在<>括号内,作为一个独立整体的分隔标记. 注意,虽然 <> 在这里的语义与模式匹配语法相同,但 string.split 并不支持其他模式语法。

    示例:

    import console;
    
    str = "123ab456ab789ab";
    t = string.split(str,"<ab>"); //使用完整字符串"ab"为分隔符拆分
    
    console.log( #t ); //数组长度为3
    console.log(table.unpack(t) );
    

使用模式匹配拆分字符串数组 #

原型:

string.splitEx(str,separator,maxLength,position)

使用模式匹配拆分字符串并返回数组

说明:

字符串数组合并

原型:

string.join(tab,sep)

说明:

将一个字符串数组(table对象)以sep指字的分隔标记合并为一个字符串

示例:

import console;

tab = {"ab";"cd";"efg"}
str = string.join(tab,"分隔符");

console.log( str );

Markdown 格式