code: def from_string(string):
          
          lines = string.split("\n")
          toks = lines[0].split()
          lengths = [float(i) for i in toks]
          toks = lines[1].split()
          angles = [float(i) for i in toks[0:3]]
          # Zeo++ takes x-axis along a and pymatgen takes z-axis along c
          a = lengths.pop(-1)
          lengths.insert(0, a)
          alpha = angles.pop(-1)
          angles.insert(0, alpha)
          latt = Lattice.from_lengths_and_angles(lengths, angles)
          sp = []
          coords = []
          chrg = []
          for l in lines[4:]:
              m = re.match(r'\d+\s+(\w+)\s+([0-9\-\.]+)\s+([0-9\-\.]+)\s+' +
                           r'([0-9\-\.]+)\s+(?:0\s+){8}([0-9\-\.]+)', l.strip())
              if m:
                  sp.append(m.group(1))
                  # coords.append([float(m.group(i)) for i in xrange(2, 5)])
                  # Zeo++ takes x-axis along a and pymatgen takes z-axis along c
                  coords.append([float(m.group(i)) for i in [3, 4, 2]])
                  chrg.append(m.group(5))
          return ZeoCssr(
              Structure(latt, sp, coords, site_properties={'charge': chrg})
          )
docs: Reads a string representation to a ZeoCssr object.
  
          Args:
              string: A string representation of a ZeoCSSR.
  
          Returns:
              ZeoCssr object.