`
- 浏览:
1450000 次
- 性别:
- 来自:
苏州
-
- package{
- import flash.display.*;
- import flash.events.*;
- import flash.net.*;
- import flash.utils.*;
-
- import SingleLineLyrics;
-
- public class LyricsFormat /*extends EventDispatcher*/*/{
-
- private var path:String;
- private var AllLineLyrics:Array;
-
- //歌曲信息;
- public var title:String;
- public var autor:String;
- public var album:String;
- public var by:String;
-
- //事件类,我就不写了,
- public var onComplete:Function;
-
-
- /*
*接收一个路径上的lrc;
*/
- public function LyricsFormat(path:String){
- if(path==null){
- throw new Error("必须要有至少一个参数");
- }
- AllLineLyrics=new Array();
-
- var loader:URLLoader=new URLLoader();
- loader.dataFormat=URLLoaderDataFormat.TEXT;
- loader.addEventListener(Event.COMPLETE,completeHander);
-
- var request:URLRequest=new URLRequest();
- request.url=path;
- loader.load(request);
- }
-
- /*
*加载完成;
*/
- function completeHander(event:Event):void{
-
- var loader:URLLoader=URLLoader(event.target);
- bulid(loader.data)
- loader.removeEventListener(Event.COMPLETE,completeHander);
-
- }
-
- /*
*开始进行比对.存储;
*/
- function bulid(data:String){
-
- title=this.selectSingle(/\[ti:(.+)\]/i,data,"标题:");
- autor=this.selectSingle(/\[ar:(.+)\]/i,data,"歌手:");
- album=this.selectSingle(/\[al:(.+)\]/i,data,"专辑:");
- by=this.selectSingle(/\[by:(.+)\]/i,data,"制作:");
-
- trace([title,autor,album,by]);
-
-
- var RE:RegExp=/\n\[\d+:.+\][^\[\r\n]*/img;
- var Lyrics:Array=data.match(RE);
-
- for each(var i:String in Lyrics){
- var singleLineTime:String=this.selectSingle(/\[(.+)\].*/,i);
- var singleLineTimeArray:Array=singleLineTime.split("][");
- var singleLineText:String=this.selectSingle(/.+\](.*)/,i);
-
- for each(singleLineTime in singleLineTimeArray){
-
- var LineTimeArray:Array=singleLineTime.split(":");
-
- var lineTime:Number=Number(LineTimeArray[0])*60*1000+Number(LineTimeArray[1])*1000;
-
- AllLineLyrics.push(new SingleLineLyrics(lineTime,singleLineText));
-
- }
-
- }
- AllLineLyrics.sort(this.Equals);
-
- //触发;
- this.onComplete();
- }
-
- /*
*进行排序比较;
*/
- public function Equals(a,b){
- return SingleLineLyrics(a).Equals(b);
- }
-
- /*
*返回所需数组;
*/
- public function toArray():Array{
-
- return this.AllLineLyrics;
- }
-
- /*
*用正则选择单个所需内容;
*/
- function selectSingle(RE:RegExp,data:String,typeS:String=""):String{
- if(RE.test(data)){
- return typeS+""+RE.exec(data)[1];
- }
- //没有记录此项;
- return " ";
- }
-
- }
- }
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
通过上述解析可以看出,在AS3环境下利用正则表达式进行文本处理是一项非常实用的技术。无论是简单的字符串替换还是复杂的模式匹配,都可以通过编写适当的正则表达式来实现。对于开发者而言,掌握这些正则表达式的...
9.使用正则表达式 10.处理事件 11.处理 XML 12.显示编程 13.处理几何结构 14.使用绘图 API 15.过滤显示对象 16.处理影片剪辑 17.处理文本 18.处理位图 19.处理视频 20.处理声音 21.捕获用户输入 22.网络与通信 23....
本笔记将详细讲解AS3.0的基础知识,包括语言元素、数据类型、变量声明、运算符、流程控制以及函数的高级使用。 2.1.2 数据类型是编程语言的基础。AS3.0中有两类数据类型:简单数据类型和复杂数据类型。简单数据类型...
在ActionScript 3.0(AS3)中,正则表达式作为一种强大的文本处理工具被引入,它能够帮助开发者高效地进行字符串搜索、替换和解析等操作。正则表达式由多个部分组成,包括元字符、元序列、标志以及数量表达符,下面...
此外,还可能涉及字符串处理和正则表达式的使用,以确保拼音转换的准确性和效率。 接下来,我们来看看“array.as”这个文件。这很可能是一个AS3源代码文件,包含了实现汉字转拼音功能的函数或者类。代码可能定义了...
Flash AS2.0 常用的正则表达式
Swift 3.0中的正则表达式功能非常强大,能够通过字符串模式匹配和文本处理实现复杂的文本操作任务,大大提高了文本处理的效率和灵活性。掌握正则表达式以及在Swift中的应用对于开发人员来说是非常必要的技能。
E正则助手.exe,帮助学习实践正则,快速高效的学习正则处理文本
### 使用日期和时间 #### 管理日历日期和时间 在ActionScript 3.0(AS3.0...以上是根据提供的内容概要整理出来的知识点,希望能帮助您深入理解AS3.0中关于日期和时间、字符串、数组、错误处理以及正则表达式的使用。
AS3 的正则表达式工具,目前仅支持简单的匹配验证
### BGP_AS-PATH的正则表达式:深入解析与应用 #### 一、BGP_AS-PATH与正则表达式的基本概念 BGP (Border Gateway Protocol) 是互联网上使用最广泛的路由协议之一,用于在不同的自治系统(AS)之间交换路由信息。AS-...
《深入理解Flash AS 3.0:语言基础与实践应用》 ActionScript 3.0是Adobe Flash开发中不可或缺的一部分,它为创建交互式动画、游戏以及富互联网应用程序提供了强大的支持。本篇将深入探讨ActionScript 3.0的基础...
### AS3.0_AS3殿堂之路_笔记 #### 核心知识点概览 根据提供的笔记内容,我们可以总结出以下核心知识点: 1. **基础概念理解与应用** 2. **事件处理与监听** 3. **图形绘制与动画制作** 4. **类与对象的设计** 5. ...
本教程将深入探讨ActionScript 3.0 的各个方面,帮助你成为一名熟练的AS3程序员。 一、ActionScript 3.0 语言基础 1. 语法:AS3.0 引入了严格的类型系统,要求在声明变量时指定类型,如 `var myVar:Number;`。此外...
在Swift编程语言中,虽然内置了强大的`NSRegularExpression`类来处理正则表达式,但其基于Objective-C的API可能对Swift开发者来说不够简洁。针对这种情况,"swift-POSIXRegex-为Swift3.0提供POSIX正则表达式"项目...
在图像处理领域,正则化滤波是一种常用的技术,它用于改善图像质量,尤其是在存在噪声或模糊的情况下。本文将深入探讨正则化滤波的概念、MATLAB中的实现以及其在图像处理中的应用。 正则化滤波是图像去噪和恢复的一...
7. **错误处理**:在处理过程中,要考虑到可能出现的错误,如无效的Json格式、正则表达式匹配失败等,需要有适当的错误处理机制。 在提供的压缩包文件中,“易语言正则取Json数据源码”应该包含了实现以上步骤的源...
标题和描述中提到的“matlab编写的图像处理正则化软件包”是一个基于MATLAB环境的专业工具箱,主要用于数字图像处理中的正则化技术。正则化是图像处理领域中一个重要的概念,它用于解决图像恢复、去噪、边缘检测等...
<某个字符> (某个字符) [某个字符] {某个字符} $a$ !a1 $a! &a* bac
本项目为TypeScript编写的正则表达式处理核心源码,涵盖11个TypeScript文件、10个JavaScript文件、9个JSON文件、2个YAML文件以及其他多种类型文件,总计46个文件。项目融合了TypeScript、JavaScript、HTML和Vue技术...