18
|
1 #!/usr/bin/env python
|
|
2
|
|
3 import re
|
|
4 from commons.pyRepetUnit.components.AbstractProgramLauncher import AbstractProgramLauncher
|
|
5
|
|
6 class replaceGreaterThanSymbolInFastaHeaderProgramLauncher(AbstractProgramLauncher):
|
|
7
|
|
8 def __init__( self ):
|
|
9 AbstractProgramLauncher.__init__( self )
|
|
10 self._formatInFile = "fasta"
|
|
11
|
|
12 def run( self ):
|
|
13 self.checkInput()
|
|
14 fastaHandler = open(self.getInputFile(), "r")
|
|
15 lines = fastaHandler.readlines()
|
|
16 fastaHandler.close()
|
|
17 newFastaName = ".".join([self.getInputFile().split(".")[0], "preprocessed", "fasta"])
|
|
18
|
|
19 self._writePreprocessedFastaFile(lines, newFastaName)
|
|
20
|
|
21 def _writePreprocessedFastaFile(self, lines, newFastaName):
|
|
22 newFastaHandler = open(newFastaName, "w")
|
|
23 for line in lines:
|
|
24 if re.match(">", line):
|
|
25 newLine = re.sub("-->|->", " to ", line)
|
|
26 newFastaHandler.write(newLine)
|
|
27 else:
|
|
28 newFastaHandler.write(line)
|
|
29 newFastaHandler.close()
|
|
30
|
|
31
|
|
32
|
|
33
|
|
34 if __name__ == "__main__":
|
|
35 i = replaceGreaterThanSymbolInFastaHeaderProgramLauncher()
|
|
36 i.checkAttributesFromCmdLine()
|
|
37 i.run()
|