# coding=utf8
# the above tag defines encoding for this document and is for Python 2.x compatibility
import re
regex = r"<td><a href=\"(http:\/\/adi.sunyconnect.suny.edu:4610\/F\/\?request=\d{6,6}&func=find-b&find_code=sys&local_base=adi01pub)\">(.*?)<b><br>(.*?) \/ (.*?)<\/b>"
test_str = ("<html>\n"
"<head> \n"
"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" /> \n"
"<meta http-equiv=\"Content-Language\" content=\"en-us\" /> \n"
"<link rel=\"stylesheet\" type=\"text/css\" href=\"/app/exlibris/sny_scripts/new_items_list/new_items.css\" />\n"
"<title>Adirondack Community College Library - New Titles List</title>\n"
"<script type=\"text/javascript\" src=\"http://www.sunyconnect.suny.edu/gbs_cover_art/gbs_covers.js\"></script>\n"
"</head>\n"
"<body> \n"
"<a name=\"top\"></a>\n"
"<table width=\"90%\" align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n"
"<table id=\"Table_01\" width=\"100%\" height=\"48\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n"
" <tr>\n"
" <td>\n\n\n"
"<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\"> \n"
" <tr bgcolor=\"#006500\"> \n"
" <td class=\"topbar\" valign=\"bottom\" align=\"right\"> \n"
" <a href=\"http://www.sunyacc.edu/go.php?page=academics/library.html\" class=\"blue\" target=new title=\"link to the library \n"
"home page\"> \n"
" <img src=\"http://adi.sunyconnect.suny.edu:4610/aleph/prod/adi/alephe/www_f_eng/icon/logo.gif\" border=\"0\" alt=\"Library \n"
"Logo\" align=\"left\"></a> \n"
" </td> \n"
"<!-- <td class=\"topbar\" valign=\"middle\" align=\"center\"> \n"
" </td> -->\n"
" </tr> \n"
" </table> \n\n"
"<center><h2>\n"
"Adirondack Community College Library<br>\n"
"New Titles List\n"
"</h2></center>\n\n"
"<p>\n\n"
"<center>\n"
"<font color=\"#006500\"><b><i>\n"
"This list shows the most recent additions to the library collection. Items are in call number order. \n"
"<br>\n"
"Click on the title to get to the full catalog record.</i></b></font>\n"
"</center>\n\n"
"</td></tr></table>\n\n"
"<!-- Close table opened in header_2 -->\n"
"</table>\n"
"<table align=\"center\" cellspacing=\"20\">\n"
"<tr><td>\n"
"<a href=\"#A\">A - General Works, Encyclopedias, Dictionaries<br>\n"
"<a href=\"#B\">B - Philosophy, Psychology, Religion<br>\n"
"<a href=\"#C\">C - History of Civilization, Archeology, Chronologies,<br>\n"
" Genealogy, Biography<br>\n"
"<a href=\"#D\">D - History: General and World History<br>\n"
"<a href=\"#E\">E - History: America<br>\n"
"<a href=\"#F\">F - History: America - Regional, State<br>\n"
"<a href=\"#G\">G - Geography, Environmental Sciences, Anthropology,<br>\n"
" Folklore, Recreation, Sports<br>\n"
"<a href=\"#H\">H - Social Sciences<br>\n"
"<a href=\"#J\">J - Political Science<br>\n"
"<a href=\"#K\">K - Law<br>\n"
"</td><td>\n"
"<a href=\"#L\">L - Education <br>\n"
"<a href=\"#M\">M - Music, books about Music<br>\n"
"<a href=\"#N\">N - Fine Arts<br>\n"
"<a href=\"#P\">P - Language and Literature<br>\n"
"<a href=\"#Q\">Q - Science<br>\n"
"<a href=\"#R\">R - Medicine, Nursing, Pharmacology, Psychiatry<br>\n"
"<a href=\"#S\">S - Agriculture<br>\n"
"<a href=\"#T\">T - Technology, Engineering, Aeronautics,<br>\n"
" Photography, Handicrafts<br>\n"
"<a href=\"#U\">U - Military Science<br>\n"
"<a href=\"#V\">V - Naval Science<br>\n"
"<a href=\"#Z\">Z - Library Science, Bibliography<br>\n"
"</td></tr>\n"
"</table>\n\n"
"<table width=\"75%\" align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td>\n"
"<h4>LC Call Number:</h4>\n"
"<font color=\"#000000\" size=\"1\"><a href=\"http://www.loc.gov/catdir/cpso/lcco/lcco.html\" target=\"_new\">\n"
"Guide to LC Classification</a> - (click for more information on the call letters for a subject)\n"
"</font></p>\n\n"
"[<b><a HREF=\"#A\">A</a></b>] [<b><a HREF=\"#B\">B</a></b>]\n"
"[<b><a HREF=\"#C\">C</a></b>] [<b><a HREF=\"#D\">D</a></b>] [<b><a HREF=\"#E\">E</a></b>]\n"
"[<b><a HREF=\"#F\">F</a></b>] [<b><a HREF=\"#G\">G</a></b>] [<b><a HREF=\"#H\">H</a></b>]\n"
"[<b><a HREF=\"#J\">J</a></b>] [<b><a HREF=\"#K\">K</a></b>]\n"
"[<b><a HREF=\"#L\">L</a></b>] [<b><a HREF=\"#M\">M</a></b>] [<b><a HREF=\"#N\">N</a></b>]\n"
"[<b><a HREF=\"#P\">P</a></b>] [<b><a HREF=\"#Q\">Q</a></b>]\n"
"[<b><a HREF=\"#R\">R</a></b>] [<b><a HREF=\"#S\">S</a></b>] [<b><a HREF=\"#T\">T</a></b>]\n"
"[<b><a HREF=\"#U\">U</a></b>] [<b><a HREF=\"#V\">V</a></b>] [<b><a HREF=\"#Z\">Z</a></b>]\n"
"<br>\n"
"</td></tr></table>\n\n"
"<table width=80%><tr><td> </td></tr><tr><td align=right>\n"
"<font size=1>Last updated: Mon 01-25-2016</font>\n"
"</td></tr></table>\n"
"<table width=90% align=center border=0 cellpadding=0 cellspacing=0>\n"
"<tr><td> <A NAME=\"A\"> </A><b><font size=+3>A</font></b></a></td><td> </td></tr>\n"
"<tr><td> <A NAME=\"B\"> </A><b><font size=+3>B</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> </td><td><a href=\"http://adi.sunyconnect.suny.edu:4610/F/?request=233654&func=find-b&find_code=sys&local_base=adi01pub\">BX1751.3 .C377 2015 Adirondack Community College Circulating<b><br>The Catholic Church / Michael Ruth, book editor.</b></a></td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"C\"> </A><b><font size=+3>C</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"D\"> </A><b><font size=+3>D</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> </td><td><a href=\"http://adi.sunyconnect.suny.edu:4610/F/?request=233656&func=find-b&find_code=sys&local_base=adi01pub\">DK508.852 .U39 2016 Adirondack Community College Circulating<b><br>Ukraine / Michael Ruth, book editor.</b></a></td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"E\"> </A><b><font size=+3>E</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"F\"> </A><b><font size=+3>F</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"G\"> </A><b><font size=+3>G</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"H\"> </A><b><font size=+3>H</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> </td><td><a href=\"http://adi.sunyconnect.suny.edu:4610/F/?request=233657&func=find-b&find_code=sys&local_base=adi01pub\">HC110.I5 I477 2016 Adirondack Community College Circulating<b><br>Income inequality / Noël Merino, Book Editor.</b></a></td></tr><tr><td> </td></tr>\n"
"<tr><td> </td><td><a href=\"http://adi.sunyconnect.suny.edu:4610/F/?request=233652&func=find-b&find_code=sys&local_base=adi01pub\">HQ766 .B4794 2016 Adirondack Community College Circulating<b><br>Birth control / Jack Lasky, book editor.</b></a></td></tr><tr><td> </td></tr>\n"
"<tr><td> </td><td><a href=\"http://adi.sunyconnect.suny.edu:4610/F/?request=233655&func=find-b&find_code=sys&local_base=adi01pub\">HV9471 .A49 2016 Adirondack Community College Circulating<b><br>America's prisons / Jack Lasky, book editor.</b></a></td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"J\"> </A><b><font size=+3>J</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"K\"> </A><b><font size=+3>K</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"L\"> </A><b><font size=+3>L</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"M\"> </A><b><font size=+3>M</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"N\"> </A><b><font size=+3>N</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"P\"> </A><b><font size=+3>P</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> </td><td><a href=\"http://adi.sunyconnect.suny.edu:4610/F/?request=233650&func=find-b&find_code=sys&local_base=adi01pub\">PC2129.E5 R59 2009 Adirondack Community College Circulating<b><br>Easy French step-by-step : master high-frequency grammar for French proficiency--fast! / Myrna Bell</b></a></td></tr><tr><td> </td></tr>\n"
"<tr><td> </td><td><a href=\"http://adi.sunyconnect.suny.edu:4610/F/?request=233648&func=find-b&find_code=sys&local_base=adi01pub\">PF3271 .H39 2011 Adirondack Community College Circulating<b><br>German verb drills / Astrid Henschel.</b></a></td></tr><tr><td> </td></tr>\n"
"<tr><td> </td><td><a href=\"http://adi.sunyconnect.suny.edu:4610/F/?request=233658&func=find-b&find_code=sys&local_base=adi01pub\">PN1997.2 .I54 2015 Adirondack Community College DVD<b><br>Infinitely polar bear / a Sony Pictures Classics release ; Paper Street Films and Park Pictures pres</b></a></td></tr><tr><td> </td></tr>\n"
"<tr><td> </td><td><a href=\"http://adi.sunyconnect.suny.edu:4610/F/?request=233649&func=find-b&find_code=sys&local_base=adi01pub\">PR830.W6 P45 2014 Adirondack Community College Circulating<b><br>Women's fiction : from 1945 to today / Deborah Philips.</b></a></td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"Q\"> </A><b><font size=+3>Q</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"R\"> </A><b><font size=+3>R</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> </td><td><a href=\"http://adi.sunyconnect.suny.edu:4610/F/?request=233647&func=find-b&find_code=sys&local_base=adi01pub\">RB115 .B823 2016 Adirondack Community College Reference<b><br>2016 ICD-10-CM for physicians professional edition / Carol J. Buck.</b></a></td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"S\"> </A><b><font size=+3>S</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> </td><td><a href=\"http://adi.sunyconnect.suny.edu:4610/F/?request=233651&func=find-b&find_code=sys&local_base=adi01pub\">S596.7 .V57 2015 Adirondack Community College Circulating<b><br>Visual soil evaluation : realizing potential crop production with minimum environmental impact / edi</b></a></td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"T\"> </A><b><font size=+3>T</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> </td><td><a href=\"http://adi.sunyconnect.suny.edu:4610/F/?request=233653&func=find-b&find_code=sys&local_base=adi01pub\">TK5105.8855 .I58 2016 Adirondack Community College Circulating<b><br>The Internet / Jack Lasky, Book Editor.</b></a></td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"U\"> </A><b><font size=+3>U</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"V\"> </A><b><font size=+3>V</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"<tr><td> <A NAME=\"Z\"> </A><b><font size=+3>Z</font></b></td><td><a HREF=\"#top\">Back to top</a> </td></tr><tr><td> </td></tr>\n"
"</table>\n"
"</body>\n"
"</html>\n")
matches = re.finditer(regex, test_str, re.IGNORECASE)
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