def extract_fastq_screen_tag(read):
    """
    Extract the tag string from a read tagged by fastq_screen

    Arguments:
      read (FastqRead): FASTQ read

    Returns:
      String: extracted tag
    """
    # Tags are appended to the index sequence and are of the
    # the form either "#FQST:Human:Mouse:01" (1st read in file)
    # or "#FQST:22" (subsequent reads)
    tag = read.seqid.index_sequence.split('#')[1]
    if not tag.startswith("FQST:"):
        raise Exception("Bad tag in read: %s" % read.seqid)
    return tag.split(':')[-1]