首页 > 匹配某一行并保留大写字母?

匹配某一行并保留大写字母?

  1. 输入文件格式

C4 Alignment:
------------
         Query: UN074481
        Target: scaffold9929 [revcomp]
         Model: est2genome
     Raw score: 2379
   Query range: 0 -> 510
  Target range: 1114739 -> 1048547

       1 : CGCACACCACACAACCACTCACGCCATGGAACACACATCACACAACCACCCACCAACTAACACATCCATGGCCACGGAACGCACACCACACAGCCACCCTCCAACACATCCATGGCCGGCGCGGGCAAGCAGGCCATCCGCGGGGGCGGGGAGCAGGGCGGCCGCACTTGGCGGAT :     176
           ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
 1114739 : CGCACACCACACAACCACTCACGCCATGGAACACACATCACACAACCACCCACCAACTAACACATCCATGGCCACGGAACGCACACCACACAGCCACCCTCCAACACATCCATGGCCGGCGCGGGCAAGCAGGCCATCCGCGGGGGCGGGGAGCAGGGCGGCCGCACTTGGCGGAT : 1114564

     177 : GCACGAGCGGTGAGCAGGGCGGTGCCGCGGGCGGCGCCGCGGGCACGGAGCAGGGCCACCGCGCTGGCAGCGAGCTTGGCGGATGCTCGGGCGACGAGCTTGCCGGACGCGCGGGCGACGAGCATGGCGCGCAGCGGCGGCTCACTCCACCGTCGACTGCTCAGCGCAA  >>>>  :     346
           |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||+-     
 1114563 : GCACGAGCGGTGAGCAGGGCGGTGCCGCGGGCGGCGCCGCGGGCACGGAGCAGGGCCACCGCGCTGGCAGCGAGCTTGGCGGATGCTCGGGCGACGAGCTTGCCGGACGCGCGGGCGACGAGCATGGCGCGCAGCGGCGGCTCACTCCACCGTCGACTGCTCAGCGCAAgg..... : 1114392

     347 : Target Intron 1 >>>>  GGGCGCGACGGATTCTTCCCTCGGGCGCGCGGCAGCCTCTTCGCTCGGGCGCGCGGTGGCATCTTTCCTAGAGCATGGCGCGTGACGGCCACTACAGAGGAGCTCCTCCCTCCGGCGTCGGCCACCCGACACTGCACTGGCGCCCGGCTGTCCC :     499
               65682 bp        +-||||| | ||| ||||||||||||||||||||| |||||||||||||||||||||||||| |||| ||| |||||||| |||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||| || |||||||
 1114391 : ....................aaGGGCGTGGCGGCTTCTTCCCTCGGGCGCGCGGCGGCCTCTTCGCTCGGGCGCGCGGTGGCCTCTTCCCTCGAGCATGGTGCGTGACGGCCACTACAGAGGAGCTCCTCCCTGCGGCGTCGGCCACCCGACACTGCACTGGCGCGCGACTGTCCC : 1048559

     500 : CCCCCCCCCCC :     510
           || || | | |
 1048558 : CCTCCTCTCTC : 1048548

# --- START OF GFF DUMP ---
#
#
##gff-version 2
##source-version exonerate:est2genome 2.2.0
##date 2016-06-22
##type DNA
#
#
# seqname source feature start end score strand frame attributes
#
scaffold9929    exonerate:est2genome    gene    1048548    1114739    2379    -    .    gene_id 0 ; sequence UN074481 ; gene_orientation +
scaffold9929    exonerate:est2genome    utr5    1114395    1114739    .    -    .    
scaffold9929    exonerate:est2genome    exon    1114395    1114739    .    -    .    insertions 0 ; deletions 0
scaffold9929    exonerate:est2genome    splice5    1114393    1114394    .    -    .    intron_id 1 ; splice_site "GG"
scaffold9929    exonerate:est2genome    intron    1048713    1114394    .    -    .    intron_id 1
scaffold9929    exonerate:est2genome    splice3    1048713    1048714    .    -    .    intron_id 0 ; splice_site "AA"
scaffold9929    exonerate:est2genome    exon    1048548    1048712    .    -    .    insertions 0 ; deletions 0
scaffold9929    exonerate:est2genome    similarity    1048548    1114739    2379    -    .    alignment_id 0 ; Query UN074481 ; Align 1114740 1 345 ; Align 1048713 346 165
# --- END OF GFF DUMP ---
#
-- completed exonerate analysis
Command line: [./exonerate INPUT/UN183704.fa INPUT/scaffold9929.fa --model est2genome --showtargetgff TRUE --showvulgar no --showalignment yes --alignmentwidth 200 --bestn 1 --verbose 2]
Hostname: [node009]

想要匹配竖线(|)下边的行,并保留这一行所有的大写字母
最后的结果
CGCACACCACACAACCACTCACGCCATGGAACACACATCACACAACCACCCACCAACTAACACATCCATGGCCACGGAACGCACACCACACAGCCACCCTCCAACACATCCATGGCCGGCGCGGGCAAGCAGGCCATCCGCGGGGGCGGGGAGCAGGGCGGCCGCACTTGGCGGAT
GCACGAGCGGTGAGCAGGGCGGTGCCGCGGGCGGCGCCGCGGGCACGGAGCAGGGCCACCGCGCTGGCAGCGAGCTTGGCGGATGCTCGGGCGACGAGCTTGCCGGACGCGCGGGCGACGAGCATGGCGCGCAGCGGCGGCTCACTCCACCGTCGACTGCTCAGCGCA
GGGCGTGGCGGCTTCTTCCCTCGGGCGCGCGGCGGCCTCTTCGCTCGGGCGCGCGGTGGCCTCTTCCCTCGAGCATGGTGCGTGACGGCCACTACAGAGGAGCTCCTCCCTGCGGCGTCGGCCACCCGACACTGCACTGGCGCGCGACTGTCCC
CCTCCTCTCTC


import re
with open('result.exonerate.txt', 'r') as f:
    a =[]
    for num, line in enumerate(f):
        if '|' in line:
            a.append(num + 1)
        if 'Query:' in line:
            print ">" + line.strip().split()[1],
        elif 'Target:' in line:
            print line.strip().split()[1]
        elif num in a:
            b = re.sub(r'[^A-Z]','', line[2:-2])
            print b
【热门文章】
【热门文章】