Module modelmage :: Module unCellDesign
[hide private]
[frames] | no frames]

Source Code for Module modelmage.unCellDesign

 1  #-----------------------------------------------# 
 2  #                  modelMaGe                    # 
 3  #                                               # 
 4  #                 v1.0beta September 2009           # 
 5  #       Joerg Schaber, Max Floettmann and Jian Li   # 
 6  #                                               # 
 7  #                http://modelmage.org               # 
 8  #-----------------------------------------------# 
 9  ## @file    unCellDesign.py 
10  ## @brief   Removes Celldesigner tags from CellDesinger XML files. 
11  ## @author  Max Floettmann 
12  ##  
13  ## This file is part of modelMaGe.  Please visit http://modelMaGe.org for more 
14  ## information about modelMaGe, and the latest version of modelMaGe. 
15  ## 
16   
17  import re, sys, os 
18   
19 -class unCellDesign():
20 - def __init__(self, input):
21 if os.path.exists(input): 22 self.input = open(input, 'r').read() 23 else: 24 self.input = input 25 self.r1 = '(?:(?:\n?<celldesigner[^>]*?>)|(?:\n?</celldesigner[^>]*?>))*' # multiline 26 self.r2 = '<celldesigner[^>]*?>.*?</celldesigner[^>]*?>' # single line
27
28 - def __removeTags(self, file):
29 newString = re.sub(self.r1,'',file) 30 newString = re.sub(self.r2,'',newString) 31 return newString
32
33 - def isCellDesign(self):
34 return not self.input.find('celldesigner') in [-1]
35
36 - def convert(self):
37 newString = self.__removeTags(self.input) 38 return newString
39
40 - def write(self, output):
41 newf = open(output, 'w') 42 newf.write(newString) 43 newf.close()
44