For your examples, it's not too bad as long as there are always the same number of "words" (text separated by spaces) in all of the notices that you're relaying.

In your example:


The time and bot's name are ignored. The first "word" is ::. That's $1. The second "word" is [NEW] and that's $2. Keep going until the end.

So, you'd output:
msg $chan 01 $+ $1 03 $+ $2 etc.

Just change the colors.

One thing to remember as you're doing this. If you're using the first code that puts spaces around the []'s, then your $1,$2,etc. numbers will change because "[" will not be its own word because there are spaces around it.

Usually, when you're changing a lot about a piece of text, it's helpful do it in a variable and then just msg the variable instead of doing it all on the msg line.