Exemple #1
0
 def _parse_alt(self, str):
     if re.search('[\[\]]', str) is not None:
         # Paired breakend
         items = re.split('[\[\]]', str)
         remoteCoords = items[1].split(':')
         chr = remoteCoords[0]
         if chr[0] == '<':
             chr = chr[1:-1]
             withinMainAssembly = False
         else:
             withinMainAssembly = True
         pos = remoteCoords[1]
         orientation = (str[0] == '[' or str[0] == ']')
         remoteOrientation = (re.search('\[', str) is not None)
         if orientation:
             connectingSequence = items[2]
         else:
             connectingSequence = items[0]
         return _Breakend(chr, pos, orientation, remoteOrientation, connectingSequence, withinMainAssembly)
     elif str[0] == '.' and len(str) > 1:
         return _SingleBreakend(True, str[1:])
     elif str[-1] == '.' and len(str) > 1:
         return _SingleBreakend(False, str[:-1])
     elif str[0] == "<" and str[-1] == ">":
         return _SV(str[1:-1])
     else:
         return _Substitution(str)
 def _parse_alt(self, str):
     if re.search('[\[\]]', str) is not None:
         # Paired breakend
         items = re.split('[\[\]]', str)
         remoteCoords = items[1].split(':')
         chr = remoteCoords[0]
         if chr[0] == '<':
             chr = chr[1:-1]
             withinMainAssembly = False
         else:
             withinMainAssembly = True
         pos = remoteCoords[1]
         orientation = (str[0] == '[' or str[0] == ']')
         remoteOrientation = (re.search('\[', str) is not None)
         if orientation:
             connectingSequence = items[2]
         else:
             connectingSequence = items[0]
         return _Breakend(chr, pos, orientation, remoteOrientation,
                          connectingSequence, withinMainAssembly)
     elif str[0] == '.' and len(str) > 1:
         return _SingleBreakend(True, str[1:])
     elif str[-1] == '.' and len(str) > 1:
         return _SingleBreakend(False, str[:-1])
     elif str[0] == "<" and str[-1] == ">":
         return _SV(str[1:-1])
     else:
         return _Substitution(str)