fork download
  1. import re
  2.  
  3. string = """
  4. ARW
  5. VR-GREQ-299684_6j
  6.  
  7. VR-GREQ-299684_6k
  8.  
  9. VR-GREQ-299606_3
  10.  
  11. VR-GREQ-299606_4
  12.  
  13. VR-GREQ-299606_5
  14.  
  15. VR-GREQ-299606_7
  16.  
  17. VR-GREQ-299606_9
  18.  
  19. VR-GREQ-299607_4
  20.  
  21. VR-GREQ-299608_1
  22.  
  23. VR-GREQ-299563_10
  24.  
  25. CZC
  26. VR-GREQ-299684_6k
  27.  
  28. VR-GREQ-299606_6
  29.  
  30. VR-GREQ-299606_8
  31.  
  32. VR-GREQ-299640_1
  33.  
  34. VR-GREQ-299640_5
  35.  
  36. VR-GREQ-299640_6
  37.  
  38. VR-GREQ-299640_7
  39.  
  40. DUN
  41. FB_71125_1
  42.  
  43. FRC
  44. VR-GREQ-299659_18
  45.  
  46. VR-GREQ-299659_19
  47.  
  48. VR-GREQ-299659_28
  49.  
  50. VR-GREQ-299659_31
  51.  
  52. VR-GREQ-299659_32
  53. """
  54.  
  55. rx = r'^([A-Z]{3})$'
  56.  
  57. languages = {}
  58. tmp = list()
  59. for line in re.split(r'\n', string):
  60. m = re.search(rx, line, re.MULTILINE)
  61. if m is not None:
  62. if len(tmp) > 0:
  63. languages[current] = tmp
  64. tmp = list()
  65. current = m.group(1)
  66. else:
  67. if len(line) > 0:
  68. tmp.append(line.strip())
  69.  
  70. if len(tmp) > 0:
  71. languages[current] = tmp
  72. print languages
  73.  
Success #stdin #stdout 0.01s 9016KB
stdin
Standard input is empty
stdout
{'FRC': ['VR-GREQ-299659_18', 'VR-GREQ-299659_19', 'VR-GREQ-299659_28', 'VR-GREQ-299659_31', 'VR-GREQ-299659_32'], 'CZC': ['VR-GREQ-299684_6k', 'VR-GREQ-299606_6', 'VR-GREQ-299606_8', 'VR-GREQ-299640_1', 'VR-GREQ-299640_5', 'VR-GREQ-299640_6', 'VR-GREQ-299640_7'], 'DUN': ['FB_71125_1'], 'ARW': ['VR-GREQ-299684_6j', 'VR-GREQ-299684_6k', 'VR-GREQ-299606_3', 'VR-GREQ-299606_4', 'VR-GREQ-299606_5', 'VR-GREQ-299606_7', 'VR-GREQ-299606_9', 'VR-GREQ-299607_4', 'VR-GREQ-299608_1', 'VR-GREQ-299563_10']}