Published
Edited
Sep 21, 2022
Insert cell
# DS - Parsing HW
Insert cell
tr1 = `
<tr style="margin-bottom:10px">
<td style="border-bottom:1px solid #e3e3e3; width:260px" valign="top">
<h4 style="margin:0;padding:0;">Union Baptist Church</h4><br />
<b>AA IT WORKS II - AA It Works II</b><br />
240 West 145th Street,
<br />(Betw 7th & 8th Avenues) NY 10039
<br />
<br />
<div class="detailsBox">
Thu=Altern.BB, Living Sober & Other A.A. Literature. <br />Fri.=Alternates between Step & Tradition.
</div>
<span style="color:darkblue; font-size:10pt;">
<img src="../images/wheelchair.jpg" alt="Wheelchair Access" width="20" vspace="5" hspace="10" align="absmiddle"/>Wheelchair access
</span>
</td>
<td style="border-bottom:1px solid #e3e3e3;width:350px;" valign="top">
<b>Wednesdays From</b> 10:00 AM <b>to</b> 11:00 AM <br /><b>Meeting Type</b> B = Beginners meeting
<br />
<br />
<b>Thursdays From</b> 10:00 AM <b>to</b> 11:00 AM <br /><b>Meeting Type</b> BB = Big Book meeting
<br />
<br />
<b>Fridays From</b> 10:00 AM <b>to</b> 11:00 AM <br /><b>Meeting Type</b> S = Step meeting
<br />
<br />
<b>Tuesdays From</b> 10:00 AM <b>to</b> 11:00 AM <br /><b>Meeting Type</b> OD = Open Discussion meeting
<br />
<br />
</td>
<td style="border-bottom:1px solid #dedede; width:90px; ">
<a href="getdirections.cfm?meetingid=36" class="GetDirections">Get Directions</a>
</td>
</tr>
`
Insert cell
tr1.split('</td>')
Insert cell
metadata = tr1.split('</td>')[0].replaceAll('\t', '')
Insert cell
metadata.split(/>|</)
Insert cell
locationName = metadata.split(/>|</)[6]
Insert cell
meetingName = metadata.split(/>|</)[12]
Insert cell
streetAddress1 = metadata.split(/>|</)[16].split(/\t|\n/)[1].trim().replaceAll(',', '')
Insert cell
streetAddress2 = metadata.split(/>|</)[18].split(' ')
Insert cell
streetAddress2b = metadata.split(/>|</)[18].trim().split(/\(|\)/)
Insert cell
crossStreet = streetAddress2b[1]
Insert cell
stateName = streetAddress2[streetAddress2.length-2].trim()
Insert cell
zipCode = streetAddress2[streetAddress2.length-1].trim()
Insert cell
metaInfo= []
Insert cell
metaInfo.push(locationName, meetingName, streetAddress1, crossStreet, stateName, zipCode)
Insert cell
metaInfoProp = ["Location Name", "Meeting Name", "Street Address", "Cross Streets", "State", "Zipcode"]
Insert cell
metaInfoCombo = []
Insert cell
metaInfoCombo.push(metaInfoProp, metaInfo)
Insert cell
meetingdata = tr1.split('</td>')[1].replaceAll('\t', '').replaceAll('<b>', '').replaceAll('</b>', '').replaceAll('<br />', '')
Insert cell
meetingDataSplit1 = meetingdata.split('\n')[3].trim().split(/\s/)
Insert cell
meetingDay1 = meetingDataSplit1[0]
Insert cell
meetingDataSplit2 = meetingdata.split('\n')[7].trim().split(/\s/)
Insert cell
meetingDataSplit3 = meetingdata.split('\n')[11].trim().split(/\s/)
Insert cell
meetingDataSplit4 = meetingdata.split('\n')[15].trim().split(/\s/)
Insert cell
meetingDay2 = meetingDataSplit2[0]
Insert cell
meetingDay3 = meetingDataSplit3[0]
Insert cell
meetingDay4 = meetingDataSplit4[0]
Insert cell
meetingDays = []
Insert cell
meetingDays.push(meetingDay1, meetingDay2, meetingDay3)
Insert cell
meetingDays.push(meetingDay4)
Insert cell
meetingStartTime1 = meetingDataSplit1[3].concat(' ', meetingDataSplit1[4])
Insert cell
meetingStartTime2 = meetingDataSplit2[3].concat(' ', meetingDataSplit2[4])
Insert cell
meetingStartTime3 = meetingDataSplit3[3].concat(' ', meetingDataSplit3[4])
Insert cell
meetingStartTime4 = meetingDataSplit4[3].concat(' ', meetingDataSplit4[4])
Insert cell
meetingStartTime = []
Insert cell
meetingStartTime.push(meetingStartTime1, meetingStartTime2, meetingStartTime3, meetingStartTime4)
Insert cell
meetingEndTime1 = meetingDataSplit1[6].concat(' ', meetingDataSplit1[7])
Insert cell
meetingEndTime2 = meetingDataSplit2[6].concat(' ', meetingDataSplit2[7])
Insert cell
meetingEndTime3 = meetingDataSplit3[6].concat(' ', meetingDataSplit3[7])
Insert cell
meetingEndTime4 = meetingDataSplit4[6].concat(' ', meetingDataSplit4[7])
Insert cell
meetingEndTime = []
Insert cell
meetingEndTime.push(meetingEndTime1, meetingEndTime2, meetingEndTime3, meetingEndTime4)
Insert cell
meetingType1 = meetingdata.split('\n')[3].split('Meeting Type ')[1].trim()
Insert cell
meetingType2 = meetingdata.split('\n')[7].split('Meeting Type ')[1].trim()
Insert cell
meetingType3 = meetingdata.split('\n')[11].split('Meeting Type ')[1].trim()
Insert cell
meetingType4 = meetingdata.split('\n')[15].split('Meeting Type ')[1].trim()
Insert cell
meetingType = []
Insert cell
meetingType.push(meetingType1, meetingType2, meetingType3, meetingType4)
Insert cell
meetingInfo = {};
Insert cell
compInfo = []
Insert cell
compInfo.push(metaInfoProp, metaInfo, meetingDays, meetingStartTime, meetingEndTime, meetingType)
Insert cell
For(Var i = 0; i < meetingDays.length; i++) {
currentDay = meetingDays[i];
currentStart = meetingStartTime[i];
currentEnd = meetingEndTime[i];
currentType = meetingType[i];

meetingInfo[currentDay] = {};
meetingInfo[currentDay]["meetingStartTime"] = currentStart;
meetingInfo[currentDay]["meetingEndTime"] = currentEnd;
meetingInfo[currentDay]["meetingType"] = currentType;
}
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more