13.7.逻辑“或”

评论(0)浏览(95)分类:flash/flex/fcs/AIR
13.7.逻辑“或”在正则表达式中使用 |(竖线)字符可使正则表达式引擎考虑其它匹配。例如,下面的正则表达式匹配单词 cat、dog、pig 和 rat 中的任意一个:+展开-ActionScriptvarpattern:RegExp=/cat|dog|pig|rat/;您可以使用括号定义组以限制逻辑“或”字符 | 的范围。下面的正则表达式匹配 cat 后跟 nap 或 nip:+展开-ActionScriptvarpattern:RegExp=/cat(na..

13.6.数量表示符

评论(0)浏览(103)分类:flash/flex/fcs/AIR
13.6.数量表示符使用数量表示符指定字符或序列在模式中的重复次数,如下所示:数量表示符元字符描述*(星号)匹配前面重复零次或多次的项目。 +(加号)匹配前面重复一次或多次的项目。 ?(问号)匹配前面重复零次或一次的项目。 {n}{n,}和{n,n}指定前一项目的数值数量或数量范围: /A{27}/ 匹配重复 27 次的字符 A。/A{3,}/ 匹配重复 3 次或更多次的字符 A。/A..

13.5.字符类

评论(0)浏览(96)分类:flash/flex/fcs/AIR
13.5.字符类可以使用字符类指定字符列表以匹配正则表达式中的一个位置。使用方括号([ 和 ])定义字符类。例如,下面的正则表达式定义了匹配 bag、beg、big、bog 或 bug 的字符类:/b[aeiou]g/字符类中的转义序列通常在正则表达式中具有特殊含义的大多数元字符和元序列在字符类中“不具有”那些特殊含义。例如,在正则表达式中星号用于表示重复,但是出现在..

13.4.字符、元字符和元序列

评论(0)浏览(102)分类:flash/flex/fcs/AIR
13.4.字符、元字符和元序列最简单的正则表达式是与字符序列匹配的表达式,如以下示例中所示:var pattern:RegExp = /hello/;但是,下列字符(称为元字符)在正则表达式中具有特殊含义:^ $ \ . * + ? ( ) [ ] { } |例如,下面的正则表达式所匹配的是字母 A 后跟字母 B 的零个或多个实例(星号元字符表示重复)再跟字母 C:/AB*C/在正则表达式模式中包含元字符时若要使其不..

13.3.创建正则表达式实例

评论(0)浏览(103)分类:flash/flex/fcs/AIR
13.3.创建正则表达式实例有两种方法可以创建正则表达式实例。一种方法是使用正斜杠字符 (/) 来界定正则表达式,另一种是使用 new 构造函数。例如,以下两个正则表达式是等效的:+展开-ActionScriptvarpattern1:RegExp=/bob/i;varpattern2:RegExp=newRegExp("bob","i");正斜杠界定正则表达式的方式与用引号界定字符串文本的方式相同。正斜杠内的正则表达式部分定义“模式..

13.2.正则表达式语法

评论(0)浏览(75)分类:flash/flex/fcs/AIR
13.2.正则表达式语法本节介绍了 ActionScript 正则表达式语法的全部元素。正如您所看到的一样,正则表达式可能非常复杂且具有许多细微差别。您可以从网上或者书店中找到有关正则表达式的详细资料。切记,不同的编程环境实现正则表达式的方式也不同。ActionScript 3.0 按照 ECMAScript 第 3 版语言规范 (ECMA-262) 中的定义实现正则表达式。通常,您要使用的正则表达..

13.1.正则表达式基础知识

评论(0)浏览(70)分类:flash/flex/fcs/AIR
13.1.正则表达式基础知识使用正则表达式简介正则表达式描述字符模式。通常,正则表达式用于验证文本值是否符合特定模式(例如,验证用户输入的电话号码位数是否正确),或者替换与特定模式匹配的部分文本值。正则表达式可能非常简单。例如,假设您要确认特定字符串与“ABC”是否匹配,或者要使用某些其它文本替换字符串中出现的每个“ABC”。在这种情况下,您可以使用以..

13.0.使用正则表达式

评论(0)浏览(77)分类:flash/flex/fcs/AIR
13.0.使用正则表达式正则表达式描述用于查找和处理字符串中的匹配文本的模式。正则表达式类似于字符串,但是可以包含特殊代码以描述模式和重复。例如,下面的正则表达式与以字符 A 开头并且后跟一个或多个连续数字的字符串匹配:/A\d+/本章介绍了构造正则表达式的基本语法。但是实际上,正则表达式可能非常复杂且具有许多细微差别。您可以从网上或者书店中找到有关正..

第十三章.使用正则表达式

评论(0)浏览(99)分类:flash/flex/fcs/AIR
第十三章.使用正则表达式13.0.使用正则表达式13.1.正则表达式基础知识13.2.正则表达式语法13.3.创建正则表达式实例13.4.字符、元字符和元序列13.5.字符类13.6.数量表示符13.7.逻辑“或”13.8.正则表达式分组13.9.标志和属性13.10.对字符串使用正则表达式的方法

12.12.Unicode或ASCII字符之间的转换

评论(0)浏览(93)分类:flash/flex/fcs/AIR
12.12.Unicode或ASCII字符之间的转换问题我想得到字符的Unicode码或ASCII码。解决办法使用String.charCodeAt( )和String.fromCharCode( )方法讨论使用fromCharCode( )显示的字符不能直接进入Flash文档,这个方法是静态的,这意味着要通过最顶层的String对象调用它。它接受一个整数或整数序列,然后转为等价的字符,当值小于128时fromCharCode( ) 实际上就是把ASCII码转为字符:+展开..

12.11.反转字符串

评论(0)浏览(110)分类:flash/flex/fcs/AIR
12.11.反转字符串问题我要把字符串进行反转处理解决办法使用split( )方法创建字符数组,然后调用数组的reverse( )和join( )方法。讨论不管是单词还是字符都可以用同样的反转处理。唯一不同的是split()方法的分隔符。处理步骤:分隔字符串为数组,使用空格作为分隔符。调用reverse( )方法进行反转。使用join( )方法重新组织为字符串,当你反转单词时,使用空格作为..

12.10.修正空格符

评论(0)浏览(80)分类:flash/flex/fcs/AIR
12.10.修正空格符问题我想修正字符串首尾的空格符。解决办法使用自定义类方法ascb.util.StringUtilities.trim( ),另外,如果你使用Flex 2 framework,则可以使用mx.utils.StringUtil.trim( )静态方法。讨论字符串首尾的空格符总是让人很郁闷,一般我们都需要处理掉。ActionScript 并没有提供现成的trim( ) 实现,因此你必须自己实现了。解决步骤如下:把字符串分..

12.9.大小写转换

评论(0)浏览(83)分类:flash/flex/fcs/AIR
12.9.大小写转换问题我想进行字符串的大小写转换以便执行大小写无关的比较运算解决办法使用UpperCase( ) 和toLowerCase( ) 方法。讨论toUpperCase( )和toLowerCase( ) 方法进行大小写处理后返回新的字符串,原始字符串还是未作修改,在进行大小写无关性字符串搜索时这点是很有用的:+展开-ActionScriptvarexample:String="Whatcase?";//显示:whatcase?trace(exa..

12.8.每次只读取一个字符

评论(0)浏览(86)分类:flash/flex/fcs/AIR
12.8.每次只读取一个字符问题我想每次只读取字符串中的一个字符解决办法在for语句中使用String.charAt( )方法,也可以用String.split( )方法,以空字符串作为分隔符把所有的字符分离出来作为数组,然后再用for语句遍历数组。讨论最简单的方法就是在for循环中通过字符串的字符下标依次读取每个字符,下标范围为0到string.length-1,使用charAt( )方法即可读取字符进行处理..

12.7.删除或替换字符或单词

评论(0)浏览(77)分类:flash/flex/fcs/AIR
12.7.删除或替换字符或单词问题我要删除字符串上的字符或替换它解决办法使用replace( )方法或split( )和join( )讨论ActionScript 3.0 提供一个新方法String.replace( ),用于字符替换,该方法接受两个参数:pattern查找或替换的字符串或正则表达式。replace替换的字符串,也可以是一个返回字符串的函数。如果只提供一个参数时该方法有两个用途,这一节讨论字符串模式,正则..

12.6.单词分析

评论(0)浏览(105)分类:flash/flex/fcs/AIR
12.6.单词分析问题我想处理字符串中的单词解决办法使用split( )方法讨论split( )方法根据指定的分隔符把分离的子串存入数组,要把字符串分离出单词,可空格作为分隔符。+展开-ActionScript//创建含有多个单词的字符串varexample:String="Thisisastringofwords";//用空格作为分隔符分离字符串varwords:Array=example.split("");//循环数组处理每个单词for(vari..

12.5.获取子串

评论(0)浏览(99)分类:flash/flex/fcs/AIR
12.5.获取子串问题我要从字符串中提取子串解决办法使用substring( ),substr( ),或slice( )方法讨论substring( ),substr( ),和slice( )方法都能返回子串且不会影响原始字符串,不同点是接受参数不同。substr( )方法接受两个参数startIndex字串第一个字符位置,该值可以是负数,负数表示从字符串末尾开始,-1表示最后一个字符。length获取子串的长度,如果忽..

12.4.搜索字串

评论(0)浏览(102)分类:flash/flex/fcs/AIR
12.4.搜索字串问题我想在字符串里找出指定的子串解决办法使用String类的indexOf( )或lastIndexOf( )方法讨论使用indexOf( )和lastIndexOf( )方法可检测出字符串中是否包含指定的子串,每个方法返回匹配子串的起始索引。indexOf( )方法从左到右搜索,而lastIndexOf( )方法从右到左搜索,如果没找到则返回-1。indexOf( )方法接受两个参数:substring指定要搜索的..

12.3.插入特殊的空格字符

评论(0)浏览(354)分类:flash/flex/fcs/AIR
12.3.插入特殊的空格字符问题我想在字符串中添加空格字符,比如制表符或新行字符解决办法使用特殊字符的转义序列讨论下面的表格列出了五种空格字符的转义字符。可以在字符串里用这些转义序列,这在文本框中显示文本是很有用的:+展开-ActionScriptvarexample:String="these\twords\tare\tseparated\tby\ttabs";//结果为:thesewordsareseparatedbytabs空格字符 ..

12.2.在字符串中使用引号和省略号

评论(0)浏览(107)分类:flash/flex/fcs/AIR
12.2.在字符串中使用引号和省略号问题我想把引号和省略号作为字符串值解决办法使用反斜杆进行转义处理,或者在双引号里使用单引号讨论ActionScript 编译器通过双引号或单引号来分析字符串,字符串从引号开始到引号结束,如果中间再出现引号则编译器就会报错,这导致引号不匹配了。按照编译器的检测来说它不知道哪个引号才是结束标志,下面的例子中,这样嵌套双引号是不正确的:+..

12.1.字符串连接

评论(0)浏览(91)分类:flash/flex/fcs/AIR
12.1.字符串连接问题我想把零散的多个字符串连接成一个解决办法使用连接操作符+,或者简写成+=,或者使用String.concat( )方法讨论使用+操作符可把多个字符串连接成一个字符串:+展开-ActionScript//连接成的字符串为"Thisworks"(中间没有空格)varexample:String="This"+"works";可一次连接多个字符串:+展开-ActionScript//结果为"Thisworks"(中间有空格)varex..

12.0.简介

评论(0)浏览(74)分类:flash/flex/fcs/AIR
12.0.简介在ActionScript里字符串是最基本的字符存储类型。一个字符串由双引号或单引号包围的零个或多个字符组成。和其他语言不同的是在ActionScript里单引号和双引号是没有区别的,例如:+展开-ActionScriptvarexampleA:String="thisisastring";varexampleB:String='thisisalsoastring';varexampleC:String="stringscancontaincharacterssuchas(*+5~";va..

第十二章.字符串

评论(0)浏览(78)分类:flash/flex/fcs/AIR
第十二章.字符串12.0.简介12.1.字符串连接12.2.在字符串中使用引号和省略号12.3.插入特殊的空格字符12.4.搜索字串12.5.获取子串12.6.单词分析12.7.删除或替换字符或单词12.8.每次只读取一个字符12.9.大小写转换12.10.修正空格符12.11.反转字符串12.12.Unicode或ASCII字符之间的转换

11.7.运用动画技术

评论(0)浏览(100)分类:flash/flex/fcs/AIR
11.7.运用动画技术问题我想把这章里的动画技术应用到对象的运动上解决办法运用这些技术,把结果赋值给对象的x和y属性讨论虽然改变对象的位置有各种各样的方法,大多数这章讨论的方法都可以被应用到一个电影剪辑或sprite的任何属性上。首先尝试应用速率到对象的rotation属性上,变量名为_vr:+展开-ActionScriptpackage{importflash.display.Sprite;importflash.ev..

11.6.使用三角定理

评论(0)浏览(85)分类:flash/flex/fcs/AIR
11.6.使用三角定理问题我想做一些高级动画,如旋转,循环运动或摆动解决办法使用内建的函数:Math.sin( ),Math.cos( ),和Math.atan2( ).讨论11.2节和11.4节已经使用了正弦和余弦函数,除此它们还被用来产生更有用的效果,比如围绕一个中心或沿着直线做运动,旋转等效果。Math.sin( )和Math.cos( )函数都是基于正三角形(有一个角等于90度)。当增大函数的参数数..

11.5.弹跳

评论(0)浏览(92)分类:flash/flex/fcs/AIR
11.5.弹跳问题我想让物体弹跳起来解决办法使用Hooke's定律---弹簧算法讨论Hooke's定律描述了弹簧的运动规律,一般弹簧都有不同的弹力即弹簧所拥有的能量,或大或小,我们用_k变量表示弹簧能量的大小,设为0.1或0.2较好。ActionScript的弹簧模型还需要个目标点作为物体的弹跳点,另外还需要设置一些阻尼系数,在真实世界里物体弹跳过程会慢慢失去能量,设置..

11.4.加速运动

评论(0)浏览(92)分类:flash/flex/fcs/AIR
11.4.加速运动问题我想让物体加速移动解决办法应用加速方法讨论许多人认为加速只是简单的提高速度而已,比如想让车开的快些就踩一下加速器。更科学的定义为速率的变化称为加速。虽然大多数情况只是提高物体的速度,实际上还包括减速和改变方向。下面的例子中变量_ax和_ay代表加速,_vx和_vy代表速率:+展开-ActionScriptpackage{importflash.display.Sprite;i..

11.3.减速运动

评论(0)浏览(74)分类:flash/flex/fcs/AIR
11.3.减速运动问题我想让物体平滑的移动到指定位置,就是要慢慢降速,直到停止在指定的位置解决办法使用抛物线公式讨论首先我们看看减速的概念,察看一个物体从当前位置移动到另一个位置,根据两点之间的距离物体每次移动总距离的1/2,1/3或更少,重复此过程知道物体到达目标位置。你会发现第一次移动距离很大,接着越来越慢直到停止移动,用速率的观点来说,..

11.2.在指定方向上移动

评论(0)浏览(119)分类:flash/flex/fcs/AIR
11.2.在指定方向上移动问题我想让物体以一定的速度在指定的方向上移动解决办法转换速度和角度为x和y速率,进而改变对象的x和y轴位置讨论11.1节解释了如何在x和y轴上移动物体,但是如果知道了角度和速度,那该怎么移动物体呢?例如:我想让物体沿着135度移动,速度为每帧4像素。这个时候我们可利用基本的数学知识把角度和速度转换为x和y速率。首先,我们要确定角度,如..

11.1.移动物体

评论(0)浏览(71)分类:flash/flex/fcs/AIR
11.1.移动物体问题在sprite中有个图形,我想让它动起来解决办法先决定x或y轴(或两者)的速率,然后在每一帧中通过速率改变物体的位置讨论速率和速度不是同一个概念,速率还包含方向因素,比如说:"10 米每小时" 是速度,但是"10米每小时正北方向"是速率。在x或y轴上肯定是考虑方向的,一个正的速率代表x轴的右边,负的为左边。第一个例子定义了x速率:_vx,设置..