| 包 | 顶级 |
| 类 | public final class String |
| 继承 | String Object |
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
String() 函数将任意对象的值转换为 String 数据类型的对象。
String 类的所有方法(concat()、fromCharCode()、slice() 和 substr() 除外)都是通用方法,这意味着在对这些方法执行操作前,这些方法都将调用 toString(),并且可以将这些方法用于其它非 String 对象。
因为所有字符串索引都是从零开始的,所以任何字符串 x 的最后一个字符的索引都是 x.length - 1。
不论是使用构造函数方法 new String() 创建新的字符串变量,还是只分配字符串文本值,都可以调用 String 类的任何方法。 与以前的 ActionScript 版本不同,现在,使用构造函数、全局函数和只分配字符串文本值之间没有差别。 下面这几行代码是等同的:
var str:String = new String("foo");
var str:String = "foo";
var str:String = String("foo");将字符串变量设置为 undefined 时,Adobe ® Flash ® Player 会将 undefined 强制为 null。 所以,以下语句:
var s:String = undefined;将值设置为
null 而不是 undefined。 如果需要使用 undefined,请使用 String() 函数。
另请参见
| 属性 | 定义方 | ||
|---|---|---|---|
![]() | constructor : Object
对类对象或给定对象实例的构造函数的引用。
| Object | |
| length : int
[read-only]
一个整数,它指定在所指定的 String 对象中的字符数。
| String | ||
![]() | prototype : Object
[static]
对类或函数对象的原型对象的引用。
| Object | |
| 方法 | 定义方 | ||
|---|---|---|---|
|
创建已初始化为指定字符串的新 String 对象。
| String | ||
|
返回由参数 index 指定的位置处的字符。
| String | ||
|
返回位于指定索引位置处的字符的数值 Unicode 字符代码。
| String | ||
|
在 String 对象末尾追加补充参数(如果需要,将它们转换为字符串)并返回结果字符串。
| String | ||
|
[static]
返回一个字符串,该字符串由参数中的 Unicode 字符代码所表示的字符组成。
| String | ||
![]() |
指示对象是否已经定义了指定的属性。
| Object | |
|
搜索字符串,并返回在调用字符串内的 startIndex 位置或在该位置之后找到的第一个 val 匹配项的位置。
| String | ||
![]() |
指示 Object 类的实例是否在指定为参数的对象的原型链中。
| Object | |
|
从右向左搜索字符串,并返回在 startIndex 之前找到的最后一个 val 匹配项的索引。
| String | ||
|
比较两个或更多个字符串的排序顺序,并返回整数形式的比较结果。
| String | ||
|
将指定的 pattern 与字符串匹配。
| String | ||
![]() |
指示指定的属性是否存在、是否可枚举。
| Object | |
|
对字符串匹配指定模式并返回一个新字符串,其中的第一个模式匹配项被替换为 repl 所指定的内容。
| String | ||
|
搜索指定的 pattern 并返回第一个匹配子字符串的索引。
| String | ||
![]() |
设置循环操作动态属性的可用性。
| Object | |
|
返回一个字符串,该字符串包括从 startIndex 字符一直到 endIndex 字符(但不包括该字符)之间的所有字符。
| String | ||
|
将 String 对象拆分为一个子字符串数组,方法是在所有出现指定 delimiter 参数的位置进行拆分。
| String | ||
|
返回一个子字符串,该子字符串中的字符是通过从指定的 startIndex 开始,按照 len 指定的长度截取所得的。
| String | ||
|
返回一个字符串,其中包含由 startIndex 指定的字符和一直到 endIndex - 1 的所有字符。
| String | ||
|
返回此字符串的一个副本,其中所有大写的字符均转换为小写字符。
| String | ||
|
返回此字符串的一个副本,其中所有小写的字符均转换为大写字符。
| String | ||
|
返回此字符串的一个副本,其中所有大写的字符均转换为小写字符。
| String | ||
![]() |
返回指定对象的字符串表示形式。
| Object | |
|
返回此字符串的一个副本,其中所有小写的字符均转换为大写字符。
| String | ||
|
返回 String 实例的原始值。
| String | ||
| length | 属性 |
length:int [read-only]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
一个整数,它指定在所指定的 String 对象中的字符数。
因为所有字符串索引都是从零开始的,所以任何字符串 x 的最后一个字符的索引都是 x.length - 1。
public function get length():int
另请参见
| String | () | 构造函数 |
public function String(val:String)
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
创建已初始化为指定字符串的新 String 对象。
注意:由于字符串文本比 String 对象需要的开销少且通常更易于使用,所以,除非有充分的理由要使用 String 对象而不是字符串文本,否则应该使用字符串文本而不是 String 类。
参数val:String — 新 String 对象的初始值。
|
另请参见
| charAt | () | 方法 |
AS3 function charAt(index:Number = 0):String
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
返回由参数 index 指定的位置处的字符。 如果 index 不是从 0 到 string.length - 1 之间的数字,则返回一个空字符串。
此方法与 String.charCodeAt() 类似,所不同的是它返回的值是一个字符,而不是 16 位整数字符代码。
参数
index:Number (default = 0) — 一个整数,指定字符在字符串中的位置。 第一个字符由 0 指示,最后一个字符由 my_str.length - 1 指示。
|
String — 指定索引处的字符。 或者,如果指定的索引不在该字符串的索引范围内,则为一个空字符串。
|
另请参见
| charCodeAt | () | 方法 |
AS3 function charCodeAt(index:Number = 0):Number
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
返回指定 index 处的字符的数值 Unicode 字符代码。 如果 index 不是从 0 到 string.length - 1 之间的数字,则返回 NaN。
此方法与 String.charAt() 类似,所不同的是它返回的值是 16 位整型字符代码,而不是实际的字符。
参数
index:Number (default = 0) — 一个整数,指定字符在字符串中的位置。 第一个字符由 0, 指示,最后一个字符由 my_str.length - 1 指示。
|
Number — 指定索引处的字符的 Unicode 字符代码。 或者,如果索引不在此字符串的索引范围内,则为 NaN。
|
另请参见
| concat | () | 方法 |
AS3 function concat(... args):String
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
在 String 对象末尾追加补充参数(如果需要,将它们转换为字符串)并返回结果字符串。 源 String 对象的原始值保持不变。
参数
... args — 0 个或多个要连接的值。
|
String — 由该字符串与指定的参数连接而成的新字符串。
|
另请参见
| fromCharCode | () | 方法 |
AS3 static function fromCharCode(... charCodes):String
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
返回一个字符串,该字符串由参数中的 Unicode 字符代码所表示的字符组成。
参数
... charCodes — 一系列表示 Unicode 值的十进制整数。
|
String — 指定的 Unicode 字符代码的字符串值。
|
另请参见
| indexOf | () | 方法 |
AS3 function indexOf(val:String, startIndex:Number = 0):int
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
搜索字符串,并返回在调用字符串内 startIndex 位置上或之后找到的 val 的第一个匹配项的位置。 此索引从 0 开始,这意味着字符串的第一个字符位于索引 0,而不是索引 1。 如果未找到 val,则该方法返回 -1。
参数
val:String — 要搜索的子字符串。
|
|
startIndex:Number (default = 0) — 一个可选整数,指定搜索的起始索引。
|
int — 指定子字符串的第一个匹配项的索引,或 -1。
|
另请参见
| lastIndexOf | () | 方法 |
AS3 function lastIndexOf(val:String, startIndex:Number = 0x7FFFFFFF):int
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
从右向左搜索字符串,并返回在 startIndex 之前找到的最后一个 val 匹配项的索引。 此索引从零开始,这意味着第一个字符位于索引 0 处,最后一个字符位于 string.length - 1 处。 如果未找到 val,则该方法返回 -1。
参数
val:String — 要搜索的字符串。
|
|
startIndex:Number (default = 0x7FFFFFFF) — 一个可选整数,指定开始搜索 val 的起始索引。 默认为允许的最大索引值。 如果未指定 startIndex,则从字符串中的最后一项开始搜索。
|
int — 指定子字符串的最后一个匹配项的位置,或 -1(如果未找到)。
|
另请参见
| localeCompare | () | 方法 |
AS3 function localeCompare(other:String, ... values):int
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
比较两个或更多个字符串的排序顺序,并返回整数形式的比较结果。 虽然此方法旨在以特定于区域设置的方式处理比较,但 ActionScript 3.0 实现生成的结果与其它字符串比较的结果相同,例如,等于 (==) 或不等于 (!=) 运算符。 如果字符串相等,则返回值为 0。 如果原始字符串值在 other 指定的字符串值之前,则返回值为负整数,该值的绝对值表示这两个字符串值之间不相同的字符数。 如果原始字符串值在 other 之后,返回值为正整数,该值的绝对值表示这两个字符串值之间不相同的字符数。
参数
other:String — 要比较的字符串值。
|
|
... values — 由多个要比较的字符串组成的集合(可选)。
|
int — 值为 0(如果字符串相等)。 否则为一个负整数(如果原始字符串在字符串参数之前)或一个正整数(如果字符串参数在原始字符串之前)。 在这两种情况下,该数值的绝对值都表示这两个字符串之间的区别。
|
| match | () | 方法 |
AS3 function match(pattern:*):Array
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
将指定的 pattern 与字符串匹配。
参数
pattern:* — 要匹配的模式,可以为任何类型的对象,但通常是字符串或正则表达式。 如果 pattern 不是正则表达式或字符串,则该方法在执行前会将其转换为字符串。
|
Array — 一个字符串数组,其中包括与指定的 pattern 匹配的字符串中的所有子字符串。
如果
如果未找到匹配项,该方法返回 |
另请参见
| replace | () | 方法 |
AS3 function replace(pattern:*, repl:Object):String
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
相对于字符串匹配指定的 pattern 并返回一个新字符串,其中的第一个 pattern 匹配项被替换为 repl 所指定的内容。 pattern 参数可以是字符串或正则表达式。 repl 参数可以是字符串或函数;如果是函数,将插入由该函数返回的字符串以替换匹配项。 未修改原始字符串。
在下面的示例中,仅替换“sh”(区分大小写)的第一个实例:
var myPattern:RegExp = /sh/;
var str:String = "She sells seashells by the seashore.";
trace(str.replace(myPattern, "sch"));
// She sells seaschells by the seashore.在下面的示例中,替换“sh”(区分大小写)的所有实例,这是因为在正则表达式中设置了 g(全局)标志:
var myPattern:RegExp = /sh/g;
var str:String = "She sells seashells by the seashore.";
trace(str.replace(myPattern, "sch"));
// She sells seaschells by the seaschore.在下面的示例中,替换“sh”的所有实例,这是因为在正则表达式中设置了 g(全局)标志,并且匹配时不 区分大小写,因为设置了 i(忽略大小写)标志:
var myPattern:RegExp = /sh/gi;
var str:String = "She sells seashells by the seashore.";
trace(str.replace(myPattern, "sch"));
// sche sells seaschells by the seaschore.参数
pattern:* — 要匹配的模式,可以为任何类型的对象,但通常是字符串或正则表达式。 如果指定的 pattern 参数是除字符串或正则表达式以外的任何其它对象,将对该参数应用 toString() 方法,并使用结果字符串作为 pattern 来执行 replace() 方法。
|
|||||||||||||||
repl:Object — 通常是以插入的字符串替换匹配内容。 但也可以指定一个函数作为此参数。 如果指定一个函数,将插入由该函数返回的字符串来替换匹配内容。
如果指定一个字符串作为
例如,下面说明了如何使用 var str:String = "flip-flop"; var pattern:RegExp = /(\w+)-(\w+)/g; trace(str.replace(pattern, "$2-$1")); // flop-flip 指定一个函数作为
例如,请看以下例子:
var str1:String = "abc12 def34";
var pattern:RegExp = /([a-z]+)([0-9]+)/;
var str2:String = str1.replace(pattern, replFN);
trace(str2); // 12abc 34def
function replFN():String {
return arguments[2] + arguments[1];
}对
{"abc12", "abc", "12", 0, "abc12 def34"}第二次,模式与子字符串
{"def34", "def", "34", 6, "abc123 def34"} |
String — 结果字符串。 请注意,源字符串保持不变。
|
另请参见
| search | () | 方法 |
AS3 function search(pattern:*):int
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
搜索指定的 pattern 并返回第一个匹配子字符串的索引。 如果没有匹配的子字符串,该方法返回 -1。
参数
pattern:* — 要匹配的模式,可以为任何类型的对象,但通常是字符串或正则表达式。 如果 pattern 不是正则表达式或字符串,则该方法在执行前会将其转换为字符串。 请注意,如果指定正则表达式,该方法将忽略此正则表达式的全局标志(“g”),并忽略此正则表达式的 lastIndex 属性(并保持其值不变)。 如果传递未定义的值(或未传递值),则该方法返回 -1。
|
int — 第一个匹配子字符串的索引,如果没有匹配项,则为 -1。 请注意,字符串的索引从零开始;字符串的第一个字符位于索引 0 处,最后一个字符位于 string.length - 1 处。
|
另请参见
| slice | () | 方法 |
AS3 function slice(startIndex:Number = 0, endIndex:Number = 0x7fffffff):String
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
返回一个字符串,该字符串包括从 startIndex 字符一直到 endIndex 字符(但不包括该字符)之间的所有字符。 不修改原始 String 对象。 如果未指定 endIndex 参数,此子字符串的结尾就是该字符串的结尾。 如果按 startIndex 索引到的字符与按 endIndex 索引到的字符相同或位于后者的右侧,则该方法返回一个空字符串。
参数
startIndex:Number (default = 0) — 片段起始点的从 0 开始的索引。 如果 startIndex 是一个负数,则从右到左创建片段,其中 -1 是最后一个字符。
|
|
endIndex:Number (default = 0x7fffffff) — 一个比片段终点的索引大 1 的整数。 由 endIndex 参数索引的字符未包括在已提取的字符串中。 如果 endIndex 是一个负数,则终点根据从字符串的结尾向后数确定,其中 -1 表示最后一个字符。 默认为允许的最大索引值。 如果省略此参数,则使用 String.length。
|
String — 基于指定索引的子字符串。
|
另请参见
| split | () | 方法 |
AS3 function split(delimiter:*, limit:Number = 0x7fffffff):Array
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
将 String 对象拆分为一个子字符串数组,方法是在所有出现指定 delimiter 参数的位置进行拆分。
如果 delimiter 参数是正则表达式,即使向后跟踪可以找到与该位置匹配的非空子字符串,也仅考虑字符串给定位置处的第一个匹配项。 例如:
var str:String = "ab"; var results:Array = str.split(/a*?/); // results == ["","b"] results = str.split(/a*/); // results == ["","b"].)
如果 delimiter 参数是包含分组圆括号的正则表达式,则每次匹配 delimiter 时,会将分组圆括号的结果(包括任何未定义的结果)连接到输出数组中。 例如
var str:String = "Thi5 is a tricky-66 example.";
var re:RegExp = /(\d+)/;
var results:Array = str.split(re);
// results == ["Thi","5"," is a tricky-","66"," example."]如果指定 limit 参数,返回的数组中具有的元素数将不多于指定数目。
如果 delimiter 是空字符串、空正则表达式或者可以匹配空字符串的正则表达式,则字符串中的每一个字符都将输出为数组中的一个元素。
如果未定义 delimiter 参数,则会将整个字符串放入返回的数组的第一个元素中。
参数
delimiter:* — 指定拆分此字符串的位置的模式。 此模式可以是任何类型的对象,但通常为字符串或正则表达式。 如果 delimiter 不是正则表达式或字符串,则该方法在执行前会将其转换为字符串。
|
|
limit:Number (default = 0x7fffffff) — 要放入数组中的最大项数。 默认为允许的最大值。
|
Array — 一个子字符串的数组。
|
另请参见
| substr | () | 方法 |
AS3 function substr(startIndex:Number = 0, len:Number = 0x7fffffff):String
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
返回一个子字符串,该子字符串中的字符是通过从指定的 startIndex 开始,按照 len 指定的长度截取所得的。 原始字符串保持不变。
参数
startIndex:Number (default = 0) — 一个整数,指定用于创建子字符串的第一个字符的索引。 如果 startIndex 是一个负数,则起始索引从字符串的结尾开始确定,其中 -1 表示最后一个字符。
|
|
len:Number (default = 0x7fffffff) — 要创建的子字符串中的字符数。 默认值为所允许的最大值。 如果未指定 len,则子字符串包括从 startIndex 到字符串结尾的所有字符。
|
String — 基于指定参数的子字符串。
|
另请参见
| substring | () | 方法 |
AS3 function substring(startIndex:Number = 0, endIndex:Number = 0x7fffffff):String
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
返回一个字符串,其中包含由 startIndex 指定的字符和一直到 endIndex - 1 的所有字符。 如果未指定 endIndex,则使用 String.length。 如果 startIndex 的值等于 endIndex 的值,则该方法返回一个空字符串。 如果 startIndex 的值大于 endIndex 的值,则在执行函数之前会自动交换参数。 原始字符串保持不变。
参数
startIndex:Number (default = 0) — 一个整数,指定用于创建子字符串的第一个字符的索引。 startIndex 的有效值范围为从 0 到 String.length。 如果 startIndex 是一个负值,则使用 0 。
|
|
endIndex:Number (default = 0x7fffffff) — 一个整数,它比所提取的子字符串中的最后一个字符的索引大 1。 endIndex 的有效值范围为从 0 到 String.length。 endIndex 处的字符不包括在子字符串中。 默认为允许的最大索引值。 如果省略此参数,则使用 String.length。 如果此参数是一个负值,则使用 0。
|
String — 基于指定参数的子字符串。
|
另请参见
| toLocaleLowerCase | () | 方法 |
AS3 function toLocaleLowerCase():String
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
返回此字符串的一个副本,其中所有大写的字符均转换为小写字符。 原始字符串保持不变。 虽然此方法旨在以特定于区域设置的方式处理转换,但 ActionScript 3.0 实现生成的结果与 toLowerCase() 方法生成的结果相同。
String — 该字符串的一个副本,其中所有大写的字符均转换为小写字符。
|
另请参见
| toLocaleUpperCase | () | 方法 |
AS3 function toLocaleUpperCase():String
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
返回此字符串的一个副本,其中所有小写的字符均转换为大写字符。 原始字符串保持不变。 虽然此方法旨在以特定于区域设置的方式处理转换,但 ActionScript 3.0 实现生成的结果与 toUpperCase() 方法生成的结果相同。
String — 该字符串的一个副本,其中的所有小写字符均转换为大写字符。
|
另请参见
| toLowerCase | () | 方法 |
AS3 function toLowerCase():String
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
返回此字符串的一个副本,其中所有大写的字符均转换为小写字符。 原始字符串保持不变。
此方法转换所有存在 Unicode 小写等效项的字符(不仅仅是 A-Z):
var str:String = " JOSÉ BARÇA"; trace(str.toLowerCase()); // josé barça
String — 该字符串的一个副本,其中所有大写的字符均转换为小写字符。
|
另请参见
| toUpperCase | () | 方法 |
AS3 function toUpperCase():String
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
返回此字符串的一个副本,其中所有小写的字符均转换为大写字符。 原始字符串保持不变。
此方法转换所有存在 Unicode 大写等效项的字符(不仅仅是 a-z):
var str:String = "José Barça"; trace(str.toUpperCase()); // JOSÉ BARÇA
String — 该字符串的一个副本,其中的所有小写字符均转换为大写字符。
|
另请参见
| valueOf | () | 方法 |
AS3 function valueOf():String
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
返回 String 实例的原始值。 此方法旨在将 String 对象转换为原始字符串值。 因为 Flash Player 会在需要时自动调用 valueOf(),所以几乎不需要显式调用此方法。
String — 字符串的值。
|
replace():调用 String 的 split() 和 join() 方法,以删除用新字符串传入的字符串的一个子字符串。trim():使用传入的字符串调用 trimBack() 和 trimFront(),并返回更新后的字符串。trimFront():以递归方式删除所有与 char 参数匹配的字符,从字符串的开头开始向后删除,直到字符串中第一个字符与 char 不匹配为止,并返回更新后的字符串。trimBack():以递归方式删除所有与 char 参数匹配的字符,从字符串的末尾开始向前删除,直到字符串中最后一个字符与 char 不匹配为止,并返回更新后的字符串。stringToCharacter():返回传入字符串的第一个字符。replace() 方法生成第二个字符串,调用 trim() 生成第 3 个字符串。
package {
import flash.display.Sprite;
public class StringExample extends Sprite {
public function StringExample() {
var companyStr:String = new String(" Company X");
var productStr:String = "Product Z Basic ";
var emptyStr:String = " ";
var strHelper:StringHelper = new StringHelper();
var companyProductStr:String = companyStr + emptyStr + productStr;
trace("'" + companyProductStr + "'"); // ' Company X Product Z Basic '
companyProductStr = strHelper.replace(companyProductStr, "Basic", "Professional");
trace("'" + companyProductStr + "'"); // ' Company X Product Z Professional '
companyProductStr = strHelper.trim(companyProductStr, emptyStr);
trace("'" + companyProductStr + "'"); // 'Company X Product Z Professional'
}
}
}
class StringHelper {
public function StringHelper() {
}
public function replace(str:String, oldSubStr:String, newSubStr:String):String {
return str.split(oldSubStr).join(newSubStr);
}
public function trim(str:String, char:String):String {
return trimBack(trimFront(str, char), char);
}
public function trimFront(str:String, char:String):String {
char = stringToCharacter(char);
if (str.charAt(0) == char) {
str = trimFront(str.substring(1), char);
}
return str;
}
public function trimBack(str:String, char:String):String {
char = stringToCharacter(char);
if (str.charAt(str.length - 1) == char) {
str = trimBack(str.substring(0, str.length - 1), char);
}
return str;
}
public function stringToCharacter(str:String):String {
if (str.length == 1) {
return str;
}
return str.slice(0, 1);
}
}
当前页: http://livedocs.adobe.com/flash/9.0_cn/ActionScriptLangRefV3/String.html