#NEWLINE# def parse_etags( etag_str ) : #NEWLINE# #INDENT# '\n    Parses a string with one or several etags passed in If-None-Match and\n    If-Match headers by the rules in RFC 2616. Returns a list of etags\n    without surrounding double quotes (") and unescaped from \\<CHAR>.\n    ' #NEWLINE# etags = ETAG_MATCH . findall ( etag_str ) #NEWLINE# if ( not etags ) : #NEWLINE# #INDENT# return [ etag_str ] #NEWLINE# #UNINDENT# etags = [ e . decode ( 'string_escape' ) for e in etags ] #NEWLINE# return etags