Code: Select all
Text1 =
(
Job Name Job Address Contact Name Phone Number
XXX-February2021-215 555 main ST Moe Howard (555) 555-4444
howl st-WIS
any city, wi 53005
)
Text2 =
(
Job Name Job Address Contact Name Phone Number
XXX-February2021-215 555 main ST Moe Howard (555) 555-4444
howl st-WIS
another job name line
any city, wi 53005
)
Text3 =
(
Job Name Job Address Contact Name Phone Number
XXX-February2021-215 555 main ST Moe Howard (555) 555-4444
howl st-WIS
another job name line
and another
any city, wi 53005
)
JobData1 := GetJobData(Text1)
DisplayJobData(JobData1)
JobData2 := GetJobData(Text2)
DisplayJobData(JobData2)
JobData3 := GetJobData(Text3)
DisplayJobData(JobData3)
return
GetJobData(text) {
lines := []
lines := StrSplit(Trim(text, "`n`r`t "), "`n", "`r")
for num, line in lines
{
if (num = 3) {
RegExMatch(Trim(line), "(.*?) {2,}(.*?) {2,}(.*?) {2,}(.*)", m)
jobName := m1
jobAddress := m2
contactName := m3
phoneNumber := m4
}
if (lines.Count() = 7 && num = 4) || (lines.Count() = 8 && num = 4) || (lines.Count() = 8 && num = 5)
jobName .= "`n" Trim(line)
if (num = lines.MaxIndex() - 2)
jobName .= "`n" Trim(line)
if (num = lines.MaxIndex())
jobAddress .= "`n" Trim(line)
}
return {JobName: jobName, JobAddress: jobAddress, ContactName: contactName, PhoneNumber: phoneNumber}
}
DisplayJobData(data) {
MsgBox, % "Job Name:`n" data.JobName "`n`n"
. "Job Address:`n" data.JobAddress "`n`n"
. "Contact Name: " data.ContactName "`n`n"
. "Phone Number: " data.PhoneNumber
}