Mercurial > genshi > genshi-test
diff genshi/util.py @ 820:1837f39efd6f experimental-inline
Sync (old) experimental inline branch with trunk@1027.
author | cmlenz |
---|---|
date | Wed, 11 Mar 2009 17:51:06 +0000 |
parents | 0742f421caba |
children | 09cc3627654c |
line wrap: on
line diff
--- a/genshi/util.py +++ b/genshi/util.py @@ -152,7 +152,7 @@ """ retval = [] for item in items: - if isinstance(item, (list, tuple)): + if isinstance(item, (frozenset, list, set, tuple)): retval += flatten(item) else: retval.append(item) @@ -198,7 +198,7 @@ If the `keepxmlentities` parameter is provided and is a truth value, the core XML entities (&, ', >, < and ") are left intact. - + >>> stripentities('1 < 2 …', keepxmlentities=True) u'1 < 2 \u2026' """ @@ -223,7 +223,7 @@ return ref return _STRIPENTITIES_RE.sub(_replace_entity, text) -_STRIPTAGS_RE = re.compile(r'<[^>]*?>') +_STRIPTAGS_RE = re.compile(r'(<!--.*?-->|<[^>]*>)') def striptags(text): """Return a copy of the text with any XML/HTML tags removed. @@ -234,6 +234,11 @@ >>> striptags('Foo<br />') 'Foo' + HTML/XML comments are stripped, too: + + >>> striptags('<!-- <blub>hehe</blah> -->test') + 'test' + :param text: the string to remove tags from :return: the text with tags removed """