How to extract strings from full path when full path is not fixed

/Path/snowbird9/nrfCompMgrRave1230100920.log.gz:09/20/2010 06:14:51 ERROR [UNKNOWN] Error Message.
/Path/snowbird6/nrfCompMgrRave1220100920.log.gz:09/20/2010 06:14:51 ERROR [UNKNOWN] Error Message.
/Path/snowbird14/nrfCompMgrRave920100920.log.gz:09/20/2010 06:14:51 ERROR [UNKNOWN] Error Message.
/Path/snowbird15/nrfraveComp10_SocketServerLog20100920.log.gz:09/20/2010 06:14:51 INFO [UNKNOWN] INFO Message.
/Path/thunderball6/nrfraveComp10_SocketServerLog20100920.log.gz:09/20/2010 06:14:51 INFO [UNKNOWN] INFO Message.
/Path/thunderball9/nrfraveComp13_SocketServerLog20100920.log.gz:09/20/2010 06:14:51 INFO [UNKNOWN] INFO Message.
/Path/thunderball15/nrfraveComp14_SocketServerLog20100920.log.gz:09/20/2010 06:14:51 INFO [UNKNOWN] INFO Message.
/Path/thunderball14/nrfraveComp22_SocketServerLog20100920.log.gz:09/20/2010 06:14:51 INFO [UNKNOWN] INFO Message.
/Path/thunderball10/nrfraveComp23_SocketServerLog20100920.log.gz:09/20/2010 06:14:51 INFO [UNKNOWN] INFO Message.
/Path/thunderball11/nrfraveComp09_SocketServerLog20100920.log.gz:09/20/2010 06:14:51 INFO [UNKNOWN] INFO Message.
/Path/thunderball13/nrfraveComp01_SocketServerLog20100920.log.gz:09/20/2010 06:14:51 INFO [UNKNOWN] INFO Message.
/Path/nrfraveComp01_SocketServerLog20100920.log.gz:09/20/2010 06:14:51 INFO [UNKNOWN] INFO Message.
/Path/nrfCompMgrRave920100920.log.gz:09/20/2010 06:14:51 ERROR [UNKNOWN] Error Message.

Note: Error Message contains Errors. INFO message contains information messages. so those are not fixed strings.

Here as $1 is having the full path...as my script takes parameter as input path. It will consists of three patterns

/Path/thunderball*/nrfraveComp10_SocketServerLog20100920.log.gz:09/20/2010
/Path/snowbird*/nrfCompMgrRave1230100920.log.gz:09/20/2010 06:14:51 ERROR [UNKNOWN] Error Message.
/Path/nrfCompMgrRave920100920.log.gz:09/20/2010 06:14:51 ERROR [UNKNOWN] Error Message.

Currently I have checked for the below command but problem here is in my input path i have /nrf/snowbird* or /nrf/thunderball* so i am making that as blank when i find /nrf in path. but it doesnot provide flexibility for the input path parameter that i am passing to script.

cat errors.txt | awk -F':|] ' '/ERROR|INFO/{sub(".*/nrf/","",$1);OFS=",";sub("/",",",$1);a[$1 OFS $NF]++}END{for(i in a)print i,a}' | sort -k1,3 > report.csv

Above command displays required output for me like

ServerName,Filename,Error String,Count of String
snowbird9,nrfCompMgrRave1230100920.log.gz,Error Message.,1
thunderball6,nrfraveComp10_SocketServerLog20100920.log.gz,INFO Message.,1

But it is having limitation that it will always look for fixed pattern in $1(i.e.,/nrf). So I need to check in $1 if thunderball* or snowbird* is exists then print servername in report and if it is not exits then column for Servername should be blank.

does anybody have any idea how to implement it...

Thanks in advance !