我需要将长度超过500个字符的文本拆分为几个array.完整的任务听起来是这样的:
消息被分成500个字符的块.如果消息超过500个字符,则从500个字符开始查找空格,如果找到空格,则在此位置将消息分成几个部分.如果找不到空格,则将消息除以500个字符.
我的决定,这只是个开始. 我们用正则表达式拆分文本,然后循环,如果长度允许,将数据添加到字符串中. 但我想我搞不懂了,我怎么才能得到一个字符串数组,这样每个字符串的长度才能合适地达到500个字符?
re := regexp.MustCompile(`\s+`)
res := re.Split(str, -1)
size := 500
finalString := ""
for i, _ := range res {
if len(finalString+" "+res[i]) <= size {
if len(finalString) == 0 {
finalString += res[i]
}
finalString += " " + res[i]
} else {
break // can be added to a new line, and if the length is longer, I do not know what to do
}
}