Add method to get message without formatting
This commit is contained in:
parent
5063e5f260
commit
e975eae5ba
@ -8,6 +8,7 @@ import (
|
||||
"crypto/tls"
|
||||
"log"
|
||||
"net"
|
||||
"regexp"
|
||||
"sync"
|
||||
"time"
|
||||
)
|
||||
@ -17,7 +18,7 @@ type Connection struct {
|
||||
sync.WaitGroup
|
||||
Debug bool
|
||||
Error chan error
|
||||
WebIRC string
|
||||
WebIRC string
|
||||
Password string
|
||||
UseTLS bool
|
||||
UseSASL bool
|
||||
@ -72,7 +73,7 @@ type Event struct {
|
||||
}
|
||||
|
||||
// Retrieve the last message from Event arguments.
|
||||
// This function leaves the arguments untouched and
|
||||
// This function leaves the arguments untouched and
|
||||
// returns an empty string if there are none.
|
||||
func (e *Event) Message() string {
|
||||
if len(e.Arguments) == 0 {
|
||||
@ -80,3 +81,17 @@ func (e *Event) Message() string {
|
||||
}
|
||||
return e.Arguments[len(e.Arguments)-1]
|
||||
}
|
||||
|
||||
// https://stackoverflow.com/a/10567935/6754440
|
||||
// Regex of IRC formatting.
|
||||
var ircFormat = regexp.MustCompile(`[\x02\x1F\x0F\x16\x1D]|\x03(\d\d?(,\d\d?)?)?`)
|
||||
|
||||
// Retrieve the last message from Event arguments, but without IRC formatting (color.
|
||||
// This function leaves the arguments untouched and
|
||||
// returns an empty string if there are none.
|
||||
func (e *Event) MessageWithoutFormat() string {
|
||||
if len(e.Arguments) == 0 {
|
||||
return ""
|
||||
}
|
||||
return ircFormat.ReplaceAllString(e.Arguments[len(e.Arguments)-1], "")
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user