当前位置: 首页>>代码示例>>Python>>正文


Python util.pattern函数代码示例

本文整理汇总了Python中quodlibet.util.pattern函数的典型用法代码示例。如果您正苦于以下问题:Python pattern函数的具体用法?Python pattern怎么用?Python pattern使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了pattern函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: __init__

    def __init__(self, row_pattern):
        parts = re.split(r"(?<!\\):", row_pattern)
        parts = list(map(lambda p: p.replace(r"\:", ":"), parts))

        is_numeric = lambda s: s[:2] == "~#" and "~" not in s[2:]
        is_pattern = lambda s: '<' in s
        f_round = lambda s: (isinstance(s, float) and "%.2f" % s) or s

        disp = (len(parts) >= 2 and parts[1]) or r"[i](<~#tracks>)[/i]"
        cat = parts[0]

        if is_pattern(cat):
            title = util.pattern(cat, esc=True, markup=True)
            try:
                pc = XMLFromPattern(cat)
            except ValueError:
                pc = XMLFromPattern("")
            tags = pc.tags
            format = pc.format_list
            has_markup = True
        else:
            title = util.tag(cat)
            tags = util.tagsplit(cat)
            has_markup = False
            if is_numeric(cat):

                def format(song):
                    v = text_type(f_round(song(cat)))
                    return [(v, v)]
            else:
                format = lambda song: song.list_separate(cat)

        if is_pattern(disp):
            try:
                pd = XMLFromPattern(disp)
            except ValueError:
                pd = XMLFromPattern("")
            format_display = pd.format
        else:
            if is_numeric(disp):
                format_display = lambda coll: text_type(f_round(coll(disp)))
            else:
                format_display = lambda coll: util.escape(coll.comma(disp))

        self.title = title
        self.tags = set(tags)
        self.format = format
        self.format_display = format_display
        self.has_markup = has_markup
开发者ID:Muges,项目名称:quodlibet,代码行数:49,代码来源:util.py

示例2: _format_title

 def _format_title(self, tag):
     return util.pattern(tag)
开发者ID:mistotebe,项目名称:quodlibet,代码行数:2,代码来源:songlistcolumns.py

示例3: test_invalid

 def test_invalid(self):
     self.failUnlessEqual(util.pattern("<date"), "")
     util.pattern("<d\\")
开发者ID:brunob,项目名称:quodlibet,代码行数:3,代码来源:test_util.py

示例4: test_escape

 def test_escape(self):
     self.failUnlessEqual(util.pattern("\<i\><&>\</i\>", esc=True),
                         "<i>&amp;</i>")
开发者ID:brunob,项目名称:quodlibet,代码行数:3,代码来源:test_util.py

示例5: test_condition

 def test_condition(self):
     self.failUnlessEqual(util.pattern("<~year|<~year> - <album>|<album>>"),
                          "Year - Album")
开发者ID:brunob,项目名称:quodlibet,代码行数:3,代码来源:test_util.py

示例6: test_unknown

 def test_unknown(self):
     self.failUnlessEqual(util.pattern("<foobarbaz>"), "Foobarbaz")
开发者ID:brunob,项目名称:quodlibet,代码行数:2,代码来源:test_util.py

示例7: test_tied

 def test_tied(self):
     self.failUnlessEqual(util.pattern("<~title~album>"), "Title - Album")
开发者ID:brunob,项目名称:quodlibet,代码行数:2,代码来源:test_util.py

示例8: test_internal

 def test_internal(self):
     self.failUnlessEqual(util.pattern("<~plays>"), "Plays")
开发者ID:brunob,项目名称:quodlibet,代码行数:2,代码来源:test_util.py

示例9: test_basic_nocap

 def test_basic_nocap(self):
     self.failUnlessEqual(util.pattern("<title>", False), "title")
开发者ID:brunob,项目名称:quodlibet,代码行数:2,代码来源:test_util.py

示例10: test_basic

 def test_basic(self):
     self.failUnlessEqual(util.pattern("<title>"), "Title")
开发者ID:brunob,项目名称:quodlibet,代码行数:2,代码来源:test_util.py

示例11: test_empty

 def test_empty(self):
     self.failUnlessEqual(util.pattern(""), "")
开发者ID:brunob,项目名称:quodlibet,代码行数:2,代码来源:test_util.py

示例12: tag_title

 def tag_title(tag):
     if tag.startswith("<"):
         return util.pattern(tag)
     return util.tag(tag)
开发者ID:lebauce,项目名称:quodlibet,代码行数:4,代码来源:songlist.py

示例13: __init__

 def __init__(self, pattern):
     super(SongList.PatternColumn, self).__init__(util.pattern(pattern))
     self.header_name = pattern
     self._pattern = None
     try: self._pattern = Pattern(pattern)
     except ValueError: pass
开发者ID:silkecho,项目名称:glowing-silk,代码行数:6,代码来源:songlist.py

示例14: tag_title

 def tag_title(tag):
     if "<" in tag:
         return util.pattern(tag)
     return util.tag(tag)
开发者ID:pensadorramm,项目名称:quodlibet,代码行数:4,代码来源:songlist.py

示例15: test_escape_condition

 def test_escape_condition(self):
     self.assertEqual(
         util.pattern(r"<~filename=/\/adsad\/sadads/|BLA|BLU>"), "BLU")
开发者ID:Muges,项目名称:quodlibet,代码行数:3,代码来源:test_util.py


注:本文中的quodlibet.util.pattern函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。