code: def split_values(ustring, sep=u','):
      
      assert isinstance(ustring, six.text_type), "uvalue must be unicode, not %s" % type(ustring)
      # unicode have special mark symbol 0xffff which cannot be used in a regular text,
      # so we use it to mark a place where escaped column was
      ustring_marked = ustring.replace(u'\,', u'\uffff')
      items = tuple([i.strip().replace(u'\uffff', u',') for i in ustring_marked.split(sep)])
      return items
docs: Splits unicode string with separator C{sep},
      but skips escaped separator.
      
      @param ustring: string to split
      @type ustring: C{unicode}
      
      @param sep: separator (default to u',')
      @type sep: C{unicode}
      
      @return: tuple of splitted elements