I am using a program to monitor event logs, which in turn saves the events to MySQL. However, the entire Windows Event log is placed into one field. I would like to somehow break that up to only display certain non-consecutive parts of the string. For example:

Logon Failure:
Reason:    Account logon time restriction violation
    User Name:    joebob
    Domain:        DOMAIN
    Logon Type:    10
    Logon Process:    User32  
    Authentication Package:    Negotiate
    Workstation Name:    JOEBOB_COMP
    Caller User Name:    JOEBOB_COMP
    Caller Domain:    DOMAIN
    Caller Logon ID:    (0x0,0x3E7)
    Caller Process ID:    5324
    Transited Services:    -
    Source Network Address:
    Source Port:    4639
All of that is placed into one field and formatted by carriage return line feeds. Is there any way within a MySQL component or any other program out there that would break that up and only display specific sections? Such as only the reason, user name,and workstation? Also, not all events have the same "sections" such as User Name, Domain, etc.

And if there is not a program or way to do it with queries, then how would i go about coding something to break it into an array, or break each section into it's own seperate field by using the carriage returns? From there i want to generate reports that include only sections of the event log.