re正则在python中的简单实用
来源:互联网 发布:积分购物源码 编辑:程序博客网 时间:2024/05/21 15:05
python:2.7.3
platform:windows
最近公司需要做个分析,从冗长的错误日志中分析并且分离出同类的错误然后分别提交.
于是第一次接触python.然后就喜欢上了...
日志大概长这样.
20160101-190115[I]: [Lua]Role:19125 [ClientErrorMsg] [string "src/ui/office/KUIOfficeMainLayer.luac"]:0: attempt to index field '_mainLayout' (a nil value) [C]:129stack:[string "src/main.luac"]: in function '__index'[string "src/ui/office/KUIOfficeMainLayer.luac"]: in function ''[string "src/ui/office/KUIOfficeMainLayer.luac"]: in main chunk[string "src/logic/KEventDispatchCenter.luac"]: in function 'dispatchEvent'[string "src/logic/KPlayer.luac"]: in main chunk[C]: in function 'xpcall'[string "src/network/KGameServer_v2.luac"]: in main chunk[string "src/network/KGameServer_v2.luac"]: in function 'OnRecvPackage'20160101-101537[I]: [Lua]Role:13603 [ClientErrorMsg] [string "lib/string.luac"]:0: assertion failed! [C]:29stack:[string "src/main.luac"]: in main chunk[C]: in function 'assert'[string "lib/string.luac"]: in function 'split'[string "src/ui/guide/KUIGuideDialogueNode.luac"]: in function 'refreshDialogue'[string "src/ui/guide/KUIGuideDialogueNode.luac"]: in main chunk[string "src/ui/guide/KUIGuideDialogueNode.luac"]: in function 'refreshUI'[string "src/ui/uibase/KUINodeBase.luac"]: in function 'autoHandler'[string "src/ui/uibase/KUINodeBase.luac"]: in function 'init'[string "src/ui/g20160101-160554[I]: [Lua]Role:17096 [ClientErrorMsg] [string "src/ui/office/factory/KUIFactoryGearMultiChoo..."]:0: attempt to index global 'scrollControl' (a nil value) [C]:26stack:[string "src/main.luac"]: in function '__index'[string "src/ui/office/factory/KUIFactoryGearMultiChoo..."]: in main chunk[string "src/logic/KEventDispatchCenter.luac"]: in function 'dispatchEvent'[string "src/logic/KPlayer.luac"]: in main chunk[C]: in function 'xpcall'[string "src/network/KGameServer_v2.luac"]: in main chunk[string "src/network/KGameServer_v2.luac"]: in function 'OnRecvPackage'[string "lib/tcp_client_v2.luac"]: in main chunk
观察了一阵子觉得首先应该把他们截断.于是正则就派上用场了.
由于反斜杠会引起排版错误。就贴图了。
之后做工具的时候又遇见一个需求.
要实现正则查找一个字符串.该字符串是符合某个规则的字符串的子字符串.
一开始不知道有分组这一回事.只能分次去查找.
譬如
<Size X="1280.0000" Y="720.0000" /> <PrePosition X="0.0000" Y="0.0000" /> <PreSize X="0.0000" Y="0.0000" /> <FileData Type="Normal" Path="ui_material/battle/zd_background.png" />在类似的字符串中查找ui_material/battle/zd_background.png这个子字符串.
如果不使用分组的话.我必须先这样re.search(r'<FileData.*>', str).去定位到那一行.再在结果中二次查找.
后来问了我师傅他告诉我有分组这一回事..于是乎事情就简单了..
re.search(r'Path=\"(.*)\" />', str)
完美解决...
未完待续..
0 0
- re正则在python中的简单实用
- 关于Python正则re中的(.*?)
- 简单学正则表达式re模块-python
- Python正则表达式中的re.S
- Python中的正则表达式-re模块
- Python中的re模块和正则表达式
- Python中的re(正则表达式)
- python中的re(正则表达式)
- python中的re模块(正则表达式)
- python中的正则表达式(re模块)
- Python正则表达式中的re.S
- python中的正则表达式(re模块)
- 【学习笔记】Python中的正则表达式re
- 正则表达式re中的贪心算法和非贪心算法 在python中的应用
- Python 正则表达式 re
- python-re【正则表达式】
- python re 正则表达式
- python 正则(re)
- 完整修改主机名
- 设计模式学习笔记—单例模式
- i OS 应用内置付费功能
- shareSDK新浪和微信分享错误code=204
- RecyclerView使用 及 滑动时加载图片优化方案
- re正则在python中的简单实用
- 九宫格 Swift提供经典的数组和字典两种集合类型来存储集合数据,使用数组实现一个九宫格程序,
- iCloud云备份与照片库
- #pragma pack(n)
- List,Set,Map用法以及区别
- Linux命令经典面试题:统计文件中出现次数最多的前10个单词
- Git修改文件权限方法
- Android Studio 设置内存大小及原理
- 从源码上看Volley的缓存机制,volley缓存