python - 动态提取文件中的变量
大家讲道理
大家讲道理 2017-04-18 09:04:53
[Python讨论组]

动态查询包含特定子字符的变量,比如包含JSQ的变量。

JSQEXBasicStructure.JSQEX_Room = function(a) {
    JSQEXBasicStructure.JSQEX_Loop.call(this, a);
    this.JSQEX_innerWalls = [];
    this.JSQEX_graph = null;
    JSQEXBasicStructure.JSQEX_Room =null
};

通过换行或者空格或者“.”提取,searchkey 为 JSQ

                if raw.find(searchkey) != -1:
                    lines = raw.split('\n')
                    for line in lines:
                        chars = line.split(' ') or line.split('.')
                        for char in chars:
                            if char =='':
                                pass
                            elif char.find(searchkey) != -1 and isJSVar(char):
                                    list_of_contain_lines.append(char)
                                    print lines, line, list_of_contain_lines

期待结果:

JSQEXBasicStructure
JSQEX_Room
JSQEX_Loop
JSQEX_innerWalls
JSQEX_roomType
JSQEX_roomHeight

实际结果:

this.JSQEX_innerWalls
this.JSQEX_roomType
this.JSQEX_roomHeight
this.JSQEX_surf
大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(1)
PHP中文网

错误在line.split(' ') or line.split('.')

短路操作的条件不成立啊

'JSQEXBasicStructure.JSQEX_Room = function(a) {'
直接结果
['JSQEXBasicStructure.JSQEX_Room', '=', 'function(a)', '{']

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号