flash与字符串:抽离安卓xml描述文件ID
来源:互联网 发布:指南针经纬度软件下载 编辑:程序博客网 时间:2024/06/05 18:02
第一次接触android 时候,为了加快自己敲打速度,尝试这个正则去匹配id取值。
写这个主要的目的是尝试学习使用这个正则,使用这种方式钱匹配里面字符串内容。 <(.*?)\” 这种方式去匹配一个组件类型。
但是这种字符串很受格式影响,一个空格也好换行也好也会影响抽离的结果。对于一些需求,还是要好好把握其方向可以做到什么程度。
下面做了一个小工具。对于这些声明 可以快速地 处理。既学习正则也可以体现一下这种与字符串打交道乐趣。
使用AIR 可以做的更加极致一点很方便去调用。
import flash.text.*;var codeText:TextField = new TextField();codeText.text = "粘贴Egret代码";codeText.width = 736.95;codeText.height = 223.85;codeText.type = TextFieldType.INPUT;codeText.border = true;codeText.x = 25;codeText.y = 20;codeText.multiline = true;addChild(codeText);var resultText:TextField = new TextField();resultText.text = "输出结果";resultText.width = 736.95;resultText.height = 223.85;resultText.type = TextFieldType.DYNAMIC;resultText.border = true;resultText.x = 25;resultText.y = 262;resultText.multiline = true;addChild(resultText);stage.addEventListener(KeyboardEvent.KEY_DOWN,onKeyDownHandler);function onKeyDownHandler(event:KeyboardEvent):void{ if (event.keyCode == 13) { changeCode(); }}//抽离id值function changeCode():void{ var codeStr:String = codeText.text; var array:Array = codeStr.split("\r"); var typeReg:RegExp = new RegExp("<(.*?)\\s","gi"); var reg:RegExp =/id\/(.*?)\"/ig; var resultStr:String = "";//结果1 var resultStr2:String = "";//结果2 var flag:int = 1; var typeStr:String = ""; var idStr:String = ""; for each (var str:String in array) { //搜索空格符 var typeTempArray:Array = str.match(typeReg); if ( flag==2) { var defTempArray:Array = str.match(reg); typeTempArray = str.match(typeReg); if (typeTempArray && typeTempArray[0]) { typeStr = typeTempArray[0].replace("<",""); } if (defTempArray && defTempArray[0]) { idStr = defTempArray[0].replace("id/","").replace("\"",""); //trace("获取到ID对象"+typeStr); resultStr += "private #2 #1;".replace("#1",idStr).replace("#2",typeStr) + "\n"; resultStr2 += "#1=(#2)findViewById(R.id.#1) ;".replace(/#1/ig,idStr).replace(/#2/ig,typeStr) + "\n"; flag = 1; } } if (typeTempArray && typeTempArray[0]) { flag = 2; typeStr = typeTempArray[0].replace("<",""); } } resultText.text = resultStr+"\n"+resultStr2;}
0 0
- flash与字符串:抽离安卓xml描述文件ID
- flash与CPU连接及flash属性描述文件
- 解析XML字符串与xml文件
- flash与字符串:微信消息xml字段抽离
- flash读取xml文件
- flash读取xml文件
- flash读取XML文件
- flash读取xml文件
- c#与flash文件间的xml数据交换
- Android开发--身高体重指数(BIM)计算--访问标识符号(android:id属性/XML说明文件与R.java资源文件/将字符串抽离XML/新增XML文件)
- 证书、描述文件、App ID的解释
- iOS开发证书、描述文件、bundle ID
- web.xml文件元素描述
- iOS证书 ID 描述文件 (certificate id provisioning profile)
- TinyXML进行XML字符串与XML文件转化
- 文件描述符与进程描述符
- xml文件解析,同步xml文件描述的文件
- flash与字符串:字符串与属性
- 101 php 正则表达式
- Java并发编程:Timer和TimerTask
- Mybatis中的常用sql
- 圆与任意多边形交的长度
- LVS Nginx HAProxy 优缺点
- flash与字符串:抽离安卓xml描述文件ID
- iOS开发中允许单个页面进行横屏显示的方法
- Adobe Acrobat XI pro虚拟打印机的安装教程(附激活)
- Android ListView操作处理
- 1005. Spell It Right (20)
- RandomAccess接口
- Object C 基本数据类型
- 七千猫创客路,从罗马仕到声宴耳机
- 第7周项目2-建立链队算法库