免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1788 | 回复: 0
打印 上一主题 下一主题

Python应用:文件内容分析:筛选单词清单 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-01-09 19:37 |只看该作者 |倒序浏览
    今天工作又遇到了问题,简单说一下:是汉化Flash项目(程序文件扩展名as),部门的策划新手从老外那里发过来的策划案中的数据集文档析出中英文列表词元不完整,这是在调试程序时发现的。
    我想起在源码中的字元定义很有规律可循,即都写成这种形式:
[color="#008080"]stype5Verb2.push("nap");
所以我可以使用Python正则来取出这种写法中的单词字元
这是所写程序,其生成所需字元清单,去除可能的重复字元并排序:
[color="#008080"]# restoreWordSets.py
[color="#0000ff"]import [color="#800000"]re
[color="#0000ff"]import [color="#800000"]types
[color="#000000"]sFile_wordSet[color="#00c600"]=[color="#000000"]r[color="#a6caf0"]'workfolder\words.as'
[color="#000000"]sPath_produce[color="#00c600"]=[color="#000000"]r[color="#a6caf0"]'[color="#a6caf0"]workfolder[color="#a6caf0"]\datasetFactory\produce\\'
[color="#000000"]sFile_Produce[color="#00c600"]=[color="#000000"]sPath_produce[color="#00c600"]+[color="#a6caf0"]'wordSets.txt'
[color="#000000"]sWs[color="#00c600"]=[color="#a6caf0"]''
[color="#000000"]dWord[color="#00c600"]=[color="#000000"]{}
[color="#808000"]f[color="#00c600"]=[color="#808000"]file[color="#000000"](sFile_wordSet)
[color="#000000"]aWs[color="#00c600"]=[color="#808000"]f[color="#00c600"].[color="#808000"]readlines[color="#000000"]()
[color="#808000"]f[color="#00c600"].[color="#808000"]close[color="#000000"]()
[color="#0000ff"]for [color="#000000"]ln [color="#0000ff"]in [color="#000000"]aWs:
        [color="#008080"]# ex stype5Verb2.push("nap");
        [color="#000000"]m[color="#00c600"]=[color="#800000"]re[color="#00c600"].[color="#808000"]search[color="#000000"]([color="#a6caf0"]'push\s*\(\s*"([^"]+)"\)'[color="#000000"],ln)
        [color="#0000ff"]if [color="#808000"]type[color="#000000"](m) ![color="#00c600"]= [color="#800000"]types[color="#00c600"].NoneType[color="#000000"]:
                [color="#000000"]w[color="#00c600"]=[color="#000000"]m[color="#00c600"].[color="#808000"]group[color="#000000"](1)
                [color="#0000ff"]if not [color="#000000"]dWord[color="#00c600"].[color="#808000"]has_key[color="#000000"](w):
                        [color="#000000"]dWord[w][color="#00c600"]=[color="#000000"]1
[color="#000000"]aWord[color="#00c600"]=[color="#000000"]dWord[color="#00c600"].[color="#808000"]keys[color="#000000"]()
[color="#000000"]aWord[color="#00c600"].[color="#808000"]sort[color="#000000"]()
[color="#0000ff"]for [color="#000000"]e [color="#0000ff"]in [color="#000000"]aWord:
                        [color="#000000"]sWs[color="#00c600"]+=[color="#000000"]e[color="#00c600"]+[color="#a6caf0"]'\n'
[color="#808000"]f[color="#00c600"]=[color="#808000"]file[color="#000000"](sFile_Produce,[color="#a6caf0"]'w'[color="#000000"])
[color="#808000"]f[color="#00c600"].[color="#808000"]write[color="#000000"](sWs)
[color="#808000"]f[color="#00c600"].[color="#808000"]close[color="#000000"]()

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/28253/showart_229133.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP