mirror of
https://github.com/containrrr/watchtower.git
synced 2025-01-17 18:26:19 +02:00
25 lines
457 B
Go
25 lines
457 B
Go
|
package notifications
|
||
|
|
||
|
import "bytes"
|
||
|
|
||
|
// SplitSubN splits a string into a list of string with each having
|
||
|
// a maximum number of characters n
|
||
|
func SplitSubN(s string, n int) []string {
|
||
|
sub := ""
|
||
|
subs := []string{}
|
||
|
|
||
|
runes := bytes.Runes([]byte(s))
|
||
|
l := len(runes)
|
||
|
for i, r := range runes {
|
||
|
sub = sub + string(r)
|
||
|
if (i+1)%n == 0 {
|
||
|
subs = append(subs, sub)
|
||
|
sub = ""
|
||
|
} else if (i + 1) == l {
|
||
|
subs = append(subs, sub)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return subs
|
||
|
}
|