__init__.py 文件源码

python
阅读 22 收藏 0 点赞 0 评论 0

项目:gtool 作者: gtoolframework 项目源码 文件源码
def parseformat(classname=None, formatstring=None):
    attribmarker = (p.Literal('@')|p.Literal('!')).suppress()
    cellseparator = '||'
    concatmarker = p.Optional(p.Literal('+'))

    attribgroup = attribmarker + concatmarker + p.Word(p.alphanums)

    cells = []

    _splitstring = [cell.strip() for cell in formatstring.split(cellseparator)]

    for cell in _splitstring:
        _scan = attribgroup.scanString(cell)
        _templist = []
        prestart = 0
        end = 0
        for match in _scan:
            start = match[1]
            end = match[2]

            _start = cell[prestart:start]
            if len(_start) > 0:
                # conditional logic avoids empty leading output cells
                _templist.append(om.Filler(_start))
            _templist.append(om.AttributeMatch(cell[start + 1:end])) #, classname=classname))
            prestart = end
            # print('templist:', _templist)
        _end = cell[end:]
        if len(_end) > 0:
            # conditional logic avoids empty trailing output cells
            _templist.append(om.Filler(cell[end:]))
        cells.append(_templist)

    return cells

# --- static ---
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号