Advertisement
Guest User

Untitled

a guest
Mar 26th, 2017
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.37 KB | None | 0 0
  1. import re
  2.  
  3. class StringCheck:
  4.  
  5.     def __init__(self):
  6.         return
  7.  
  8.     def task_w1(self, str):
  9.         """Checks if 'ABC' appears in the inputted string"""
  10.         if(re.search('ABC', str)):
  11.             return str + '\nMATCH: ABC\n'
  12.         return str + '\nNO MATCH\n'
  13.  
  14.     def task_w2(self, str):
  15.         """Checks if 'ABC', 'ACC', 'ADC', or 'AXC' is in the inputted string"""
  16.         string_list = ['ABC', 'ACC', 'ADC', 'AXC']
  17.         for i in range(0, len(str)):
  18.             if str[i : i + 3] in string_list:
  19.                 return str + '\nMATCH: ' + str[i : i + 3] + '\n'
  20.             elif i == len(str) - 1:
  21.                 return str + '\nNO MATCH\n'
  22.  
  23.     def task_w3(self, str):
  24.         """Checks if the inputted string is 'ABC'"""
  25.         if(re.fullmatch(str, 'ABC')):
  26.             return str + '\nMATCH: ABC\n'
  27.         return str + '\nNO MATCH\n'
  28.  
  29.     def task_w4(self, str):
  30.         """Checks if the first value is 'A' and the last value is 'B'"""
  31.         if re.match('A', str) and re.search(r'B$', str):
  32.             return str + '\nMATCH: ' + str + '\n'
  33.         return str + '\nNO MATCH\n'
  34.  
  35.     def task_w5(self, str):
  36.         """Checks if the first value is 'A', the last value is 'B', and if either 'XO' or 'OX' is in the inputted string"""
  37.         if (re.match('A', str) and re.search(r'B$', str)) and (re.search('XO', str) or re.search('OX', str)):
  38.             return str + '\nMATCH: ' + str + '\n'
  39.         return str + '\nNO MATCH\n'
  40.  
  41. if __name__ == '__main__':
  42.     StringCompare = StringCheck()
  43.     string_list = ['ABC',
  44.                    'AABCC',
  45.                    'AAAC',
  46.                    'AXC',
  47.                    'STSACCDR',
  48.                    'ADCDR',
  49.                    'AdrgdrB',
  50.                    'ASDXOSDB',
  51.                    'ASFOXSB',
  52.                    'AVOXD']
  53.     print('Task W1\n')
  54.     for word in string_list:
  55.         print(StringCompare.task_w1(word))
  56.     print('Task W2\n')
  57.     for word in string_list:
  58.         print(StringCompare.task_w2(word))
  59.     print('Task W3\n')
  60.     for word in string_list:
  61.         print(StringCompare.task_w3(word))
  62.     print('Task W4\n')
  63.     for word in string_list:
  64.         print(StringCompare.task_w4(word))
  65.     print('Task W5\n')
  66.     for word in string_list:
  67.         print(StringCompare.task_w5(word))
  68. """ THIS IS THE PROGRAM'S OUTPUT
  69. Task W1
  70.  
  71. ABC
  72. MATCH: ABC
  73.  
  74. AABCC
  75. MATCH: ABC
  76.  
  77. AAAC
  78. NO MATCH
  79.  
  80. AXC
  81. NO MATCH
  82.  
  83. STSACCDR
  84. NO MATCH
  85.  
  86. ADCDR
  87. NO MATCH
  88.  
  89. AdrgdrB
  90. NO MATCH
  91.  
  92. ASDXOSDB
  93. NO MATCH
  94.  
  95. ASFOXSB
  96. NO MATCH
  97.  
  98. AVOXD
  99. NO MATCH
  100.  
  101. Task W2
  102.  
  103. ABC
  104. MATCH: ABC
  105.  
  106. AABCC
  107. MATCH: ABC
  108.  
  109. AAAC
  110. NO MATCH
  111.  
  112. AXC
  113. MATCH: AXC
  114.  
  115. STSACCDR
  116. MATCH: ACC
  117.  
  118. ADCDR
  119. MATCH: ADC
  120.  
  121. AdrgdrB
  122. NO MATCH
  123.  
  124. ASDXOSDB
  125. NO MATCH
  126.  
  127. ASFOXSB
  128. NO MATCH
  129.  
  130. AVOXD
  131. NO MATCH
  132.  
  133. Task W3
  134.  
  135. ABC
  136. MATCH: ABC
  137.  
  138. AABCC
  139. NO MATCH
  140.  
  141. AAAC
  142. NO MATCH
  143.  
  144. AXC
  145. NO MATCH
  146.  
  147. STSACCDR
  148. NO MATCH
  149.  
  150. ADCDR
  151. NO MATCH
  152.  
  153. AdrgdrB
  154. NO MATCH
  155.  
  156. ASDXOSDB
  157. NO MATCH
  158.  
  159. ASFOXSB
  160. NO MATCH
  161.  
  162. AVOXD
  163. NO MATCH
  164.  
  165. Task W4
  166.  
  167. ABC
  168. NO MATCH
  169.  
  170. AABCC
  171. NO MATCH
  172.  
  173. AAAC
  174. NO MATCH
  175.  
  176. AXC
  177. NO MATCH
  178.  
  179. STSACCDR
  180. NO MATCH
  181.  
  182. ADCDR
  183. NO MATCH
  184.  
  185. AdrgdrB
  186. MATCH: AdrgdrB
  187.  
  188. ASDXOSDB
  189. MATCH: ASDXOSDB
  190.  
  191. ASFOXSB
  192. MATCH: ASFOXSB
  193.  
  194. AVOXD
  195. NO MATCH
  196.  
  197. Task W5
  198.  
  199. ABC
  200. NO MATCH
  201.  
  202. AABCC
  203. NO MATCH
  204.  
  205. AAAC
  206. NO MATCH
  207.  
  208. AXC
  209. NO MATCH
  210.  
  211. STSACCDR
  212. NO MATCH
  213.  
  214. ADCDR
  215. NO MATCH
  216.  
  217. AdrgdrB
  218. NO MATCH
  219.  
  220. ASDXOSDB
  221. MATCH: ASDXOSDB
  222.  
  223. ASFOXSB
  224. MATCH: ASFOXSB
  225.  
  226. AVOXD
  227. NO MATCH
  228. """
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement