# coding=utf8
# the above tag defines encoding for this document and is for Python 2.x compatibility
import re
regex = r"(?<time>\w{3} \w{3} \d{2} \d{2}:\d{2}:\d{2} \d{4}) (?<xferTime>\d*) (?<remoteHost>\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b) (?<fileSize>\d*) (?<fileName>\S*) (?<transferType>[a|b]) (?<specialActionFlag>\S{1}) (?<direction>\S{1}) (?<accessMode>\S{1}) (?<userName>\S*) (?<serviceName>\S*) (?<authenticationMethod>\S*) (?<authenticatedUserId>\S*) (?<completionStatus>\S*)"
test_str = ("Fri Aug 29 11:47:02 2014 1 85.118.235.147 815472 /u01/clients/flynet/source/live-streaming/FLY_1095206_PEREZ_HILTON_001.jpg b _ i r flynet ftp 0 * c\n"
"Fri Aug 29 11:47:03 2014 0 172.16.2.254 1678551 /u01/clients/roboturls/source/live-stream/104184.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:47:04 2014 1 85.118.235.147 831405 /u01/clients/flynet/source/live-streaming/FLY_1095206_PEREZ_HILTON_002.jpg b _ i r flynet ftp 0 * c\n"
"Fri Aug 29 11:47:05 2014 1 85.118.235.147 727777 /u01/clients/flynet/source/live-streaming/FLY_1095206_PEREZ_HILTON_003.jpg b _ i r flynet ftp 0 * c\n"
"Fri Aug 29 11:47:07 2014 1 85.118.235.147 827127 /u01/clients/flynet/source/live-streaming/FLY_1095206_PEREZ_HILTON_004.jpg b _ i r flynet ftp 0 * c\n"
"Fri Aug 29 11:47:08 2014 1 85.118.235.147 878678 /u01/clients/flynet/source/live-streaming/FLY_1095206_PEREZ_HILTON_005.jpg b _ i r flynet ftp 0 * c\n"
"Fri Aug 29 11:47:10 2014 0 172.16.2.254 1678551 /u01/clients/roboturls/source/live-stream/104185.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:47:10 2014 1 85.118.235.147 782214 /u01/clients/flynet/source/live-streaming/FLY_1095206_PEREZ_HILTON_006.jpg b _ i r flynet ftp 0 * c\n"
"Fri Aug 29 11:47:11 2014 1 85.118.235.147 893540 /u01/clients/flynet/source/live-streaming/FLY_1095206_PEREZ_HILTON_007.jpg b _ i r flynet ftp 0 * c\n"
"Fri Aug 29 11:47:13 2014 1 85.118.235.147 873624 /u01/clients/flynet/source/live-streaming/FLY_1095206_PEREZ_HILTON_008.jpg b _ i r flynet ftp 0 * c\n"
"Fri Aug 29 11:47:17 2014 0 172.16.2.254 1678551 /u01/clients/roboturls/source/live-stream/104186.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:47:24 2014 0 172.16.2.254 1678109 /u01/clients/roboturls/source/live-stream/104187.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:47:26 2014 0 206.150.180.100 639450 /u01/clients/reuters/source/stream/2014-08-29T114707Z_175098360_GM1EA8T1IUK01_RTRMADP_3_FILMFESTIVAL-VENICE.JPG b _ i r reuters ftp 0 * c\n"
"Fri Aug 29 11:47:26 2014 2 216.169.250.1 2224553 /u01/clients/gettyimages/source/live-feed/454324358.jpg b _ i r gettyimages ftp 0 * c\n"
"Fri Aug 29 11:47:31 2014 0 172.16.2.254 1677404 /u01/clients/roboturls/source/live-stream/104188.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:47:35 2014 4 216.169.250.1 2905344 /u01/clients/gettyimages/source/live-feed/454324364.jpg b _ i r gettyimages ftp 0 * c\n"
"Fri Aug 29 11:47:38 2014 0 172.16.2.254 1678551 /u01/clients/roboturls/source/live-stream/104189.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:47:42 2014 9 216.169.250.1 4110945 /u01/clients/gettyimages/source/live-feed-news/454324356.jpg b _ i r gettyimages ftp 0 * c\n"
"Fri Aug 29 11:47:50 2014 0 172.16.2.254 547878 /u01/clients/roboturls/source/live-stream/104190.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:47:53 2014 3 216.169.250.1 2281991 /u01/clients/gettyimages/source/live-feed-news/454324374.jpg b _ i r gettyimages ftp 0 * c\n"
"Fri Aug 29 11:47:56 2014 4 216.169.250.1 2957898 /u01/clients/gettyimages/source/live-feed-news/454324366.jpg b _ i r gettyimages ftp 0 * c\n"
"Fri Aug 29 11:47:57 2014 1 216.169.250.1 1538546 /u01/clients/gettyimages/source/live-feed/454324370.jpg b _ i r gettyimages ftp 0 * c\n"
"Fri Aug 29 11:47:58 2014 0 172.16.2.254 547878 /u01/clients/roboturls/source/live-stream/104191.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:48:03 2014 2 216.169.250.1 1613416 /u01/clients/gettyimages/source/live-feed/454324382.jpg b _ i r gettyimages ftp 0 * c\n"
"Fri Aug 29 11:48:05 2014 0 172.16.2.254 547878 /u01/clients/roboturls/source/live-stream/104192.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:48:12 2014 0 172.16.2.254 547878 /u01/clients/roboturls/source/live-stream/104193.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:48:19 2014 0 172.16.2.254 556497 /u01/clients/roboturls/source/live-stream/104194.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:48:26 2014 0 172.16.2.254 547878 /u01/clients/roboturls/source/live-stream/104195.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:48:27 2014 4 216.169.250.1 1675308 /u01/clients/gettyimages/source/live-feed/454324378.jpg b _ i r gettyimages ftp 0 * c\n"
"Fri Aug 29 11:48:33 2014 0 172.16.2.254 547878 /u01/clients/roboturls/source/live-stream/104196.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:48:36 2014 3 216.169.250.1 2519001 /u01/clients/gettyimages/source/live-feed/454324376.jpg b _ i r gettyimages ftp 0 * c\n"
"Fri Aug 29 11:48:36 2014 4 216.169.250.1 2650387 /u01/clients/gettyimages/source/live-feed/454324368.jpg b _ i r gettyimages ftp 0 * c\n"
"Fri Aug 29 11:48:40 2014 0 172.16.2.254 547878 /u01/clients/roboturls/source/live-stream/104197.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:48:48 2014 0 172.16.2.254 547878 /u01/clients/roboturls/source/live-stream/104198.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:48:49 2014 1 216.169.250.1 728279 /u01/clients/gettyimages/source/live-feed-sport/454324380.jpg b _ i r gettyimages ftp 0 * c\n"
"Fri Aug 29 11:49:00 2014 0 172.16.2.254 575100 /u01/clients/roboturls/source/live-stream/104199.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:49:07 2014 0 172.16.2.254 556497 /u01/clients/roboturls/source/live-stream/104200.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:49:19 2014 0 172.16.2.254 639018 /u01/clients/roboturls/source/live-stream/104201.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:49:31 2014 0 172.16.2.254 639018 /u01/clients/roboturls/source/live-stream/104202.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:49:37 2014 0 89.187.64.162 2251248 /u01/clients/wenn/source/live-stream/wenn21657242.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:49:38 2014 0 89.187.64.162 1930371 /u01/clients/wenn/source/live-stream/wenn21657243.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:49:41 2014 2 89.187.64.162 2181480 /u01/clients/wenn/source/live-stream/wenn21657244.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:49:43 2014 1 89.187.64.162 2147554 /u01/clients/wenn/source/live-stream/wenn21657245.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:49:43 2014 0 172.16.2.254 639018 /u01/clients/roboturls/source/live-stream/104203.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:49:44 2014 4 209.63.42.82 1403942 /u01/clients/corbis/source/stream/42-61613672.jpg b _ i r corbis ftp 0 * c\n"
"Fri Aug 29 11:49:44 2014 3 209.63.42.82 1259254 /u01/clients/corbis/source/stream/42-61613671.jpg b _ i r corbis ftp 0 * c\n"
"Fri Aug 29 11:49:47 2014 3 89.187.64.162 2241632 /u01/clients/wenn/source/live-stream/wenn21657246.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:49:49 2014 4 209.63.42.82 1157640 /u01/clients/corbis/source/stream/42-61613673.jpg b _ i r corbis ftp 0 * c\n"
"Fri Aug 29 11:49:50 2014 2 89.187.64.162 1949372 /u01/clients/wenn/source/live-stream/wenn21657247.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:49:51 2014 0 172.16.2.254 639018 /u01/clients/roboturls/source/live-stream/104204.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:49:52 2014 1 89.187.64.162 2381202 /u01/clients/wenn/source/live-stream/wenn21657248.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:49:54 2014 1 89.187.64.162 2355449 /u01/clients/wenn/source/live-stream/wenn21657249.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:49:55 2014 1 89.187.64.162 2427919 /u01/clients/wenn/source/live-stream/wenn21657250.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:49:56 2014 1 89.187.64.162 2193319 /u01/clients/wenn/source/live-stream/wenn21657251.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:49:57 2014 6 216.169.250.1 2738054 /u01/clients/gettyimages/source/live-feed/454324398.jpg b _ i r gettyimages ftp 0 * c\n"
"Fri Aug 29 11:49:58 2014 0 172.16.2.254 639018 /u01/clients/roboturls/source/live-stream/104205.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:49:58 2014 1 89.187.64.162 2255569 /u01/clients/wenn/source/live-stream/wenn21657252.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:00 2014 1 89.187.64.162 2386861 /u01/clients/wenn/source/live-stream/wenn21657253.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:01 2014 0 89.187.64.162 2051803 /u01/clients/wenn/source/live-stream/wenn21657254.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:02 2014 1 89.187.64.162 2342745 /u01/clients/wenn/source/live-stream/wenn21657255.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:03 2014 4 209.63.42.82 1332076 /u01/clients/corbis/source/stream/42-61613678.jpg b _ i r corbis ftp 0 * c\n"
"Fri Aug 29 11:50:04 2014 1 89.187.64.162 2479907 /u01/clients/wenn/source/live-stream/wenn21657256.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:05 2014 0 172.16.2.254 639018 /u01/clients/roboturls/source/live-stream/104206.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:50:05 2014 3 209.63.42.82 1309323 /u01/clients/corbis/source/stream/42-61613680.jpg b _ i r corbis ftp 0 * c\n"
"Fri Aug 29 11:50:05 2014 0 89.187.64.162 1994204 /u01/clients/wenn/source/live-stream/wenn21657257.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:07 2014 1 89.187.64.162 2019528 /u01/clients/wenn/source/live-stream/wenn21657258.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:09 2014 1 89.187.64.162 2175488 /u01/clients/wenn/source/live-stream/wenn21657259.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:10 2014 1 89.187.64.162 2494267 /u01/clients/wenn/source/live-stream/wenn21657260.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:11 2014 0 89.187.64.162 2135117 /u01/clients/wenn/source/live-stream/wenn21657261.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:12 2014 0 172.16.2.254 639018 /u01/clients/roboturls/source/live-stream/104207.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:50:13 2014 1 89.187.64.162 2261582 /u01/clients/wenn/source/live-stream/wenn21657262.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:14 2014 0 89.187.64.162 2351709 /u01/clients/wenn/source/live-stream/wenn21657263.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:14 2014 6 209.63.42.82 1234207 /u01/clients/corbis/source/stream/42-61613682.jpg b _ i r corbis ftp 0 * c\n"
"Fri Aug 29 11:50:15 2014 0 89.187.64.162 1608221 /u01/clients/wenn/source/live-stream/wenn21657264.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:16 2014 0 89.187.64.162 1942966 /u01/clients/wenn/source/live-stream/wenn21657265.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:16 2014 8 209.63.42.82 1511003 /u01/clients/corbis/source/stream/42-61613683.jpg b _ i r corbis ftp 0 * c\n"
"Fri Aug 29 11:50:17 2014 1 89.187.64.162 2035558 /u01/clients/wenn/source/live-stream/wenn21657266.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:17 2014 6 209.63.42.82 1181848 /u01/clients/corbis/source/stream/42-61613685.jpg b _ i r corbis ftp 0 * c\n"
"Fri Aug 29 11:50:18 2014 6 209.63.42.82 1244414 /u01/clients/corbis/source/stream/42-61613687.jpg b _ i r corbis ftp 0 * c\n"
"Fri Aug 29 11:50:18 2014 1 89.187.64.162 1897281 /u01/clients/wenn/source/live-stream/wenn21657267.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:20 2014 0 172.16.2.254 868345 /u01/clients/roboturls/source/live-stream/104208.jpg b _ i r roboturls ftp 0 * c\n"
"Fri Aug 29 11:50:20 2014 1 89.187.64.162 2253115 /u01/clients/wenn/source/live-stream/wenn21657268.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:21 2014 0 89.187.64.162 2014465 /u01/clients/wenn/source/live-stream/wenn21657269.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:21 2014 12 216.169.250.1 2372836 /u01/clients/gettyimages/source/live-feed-sport/454324396.jpg b _ i r gettyimages ftp 0 * c\n"
"Fri Aug 29 11:50:22 2014 0 89.187.64.162 2314804 /u01/clients/wenn/source/live-stream/wenn21657270.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:23 2014 0 89.187.64.162 2475307 /u01/clients/wenn/source/live-stream/wenn21657271.jpg b _ i r wenn ftp 0 * c\n"
"Fri Aug 29 11:50:24 2014 0 206.150.180.100 721643 /u01/clients/reuters/source/stream/2014-08-29T115000Z_681847560_GM1EA8T1IXL01_RTRMADP_3_FILMFESTIVAL-VENICE.JPG b _ i r reuters ftp 0 * c\n"
"Fri Aug 29 11:50:24 2014 15 216.169.250.1 2851176 /u01/clients/gettyimages/source/live-feed/454324418.jpg b _ i r gettyimages ftp 0 * c\n"
"Fri Aug 29 11:50:27 2014 0 172.16.2.254 868345 /u01/clients/roboturls/source/live-stream/104209.jpg b _ i r roboturls ftp 0 * c")
matches = re.finditer(regex, test_str)
for matchNum, match in enumerate(matches, start=1):
print ("Match {matchNum} was found at {start}-{end}: {match}".format(matchNum = matchNum, start = match.start(), end = match.end(), match = match.group()))
for groupNum in range(0, len(match.groups())):
groupNum = groupNum + 1
print ("Group {groupNum} found at {start}-{end}: {group}".format(groupNum = groupNum, start = match.start(groupNum), end = match.end(groupNum), group = match.group(groupNum)))
# Note: for Python 2.7 compatibility, use ur"" to prefix the regex and u"" to prefix the test string and substitution.
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Python, please visit: https://docs.python.org/3/library/re.html